You could write down some amounts from your head and the amount of change the program should suggest to return. (One your shopping receipts plus some imaginary payments for each amount in it, for example) Put those as test function unittest and run that with your function for change to test if it passes the tests.
It would be little difficult to keep track of all coins that actually exist in cash box after actions, so you maybe can assume infinite amount of change.
To start with here one test case:
Price 4.35, payment 5.
First returned coin 25c=quarter, why? What are the other coins? Why?
For Each ctrl As Control In Me.Controls("pnlMainPanel").Controls
If ctrl.GetType Is GetType(System.Windows.Forms.Panel) Then
For Each subCtrl As Control In ctrl.Controls
If subCtrl.GetType Is GetType(System.Windows.Forms.TextBox) Then
If subCtrl.GetType Is ...