• We just launched and are currently in beta. Join us as we build and grow the community.

Correct Way to Open a Windows Form in VB.NET

Minecrafter6368

Turn-Based Strategist
M Rep
0
0
0
Rep
0
M Vouches
0
0
0
Vouches
0
Posts
99
Likes
145
Bits
2 MONTHS
2 2 MONTHS OF SERVICE
LEVEL 1 300 XP
Few months ago I encounter a problem with my windows form bound using a DataSet. When I open the form the first time, it seems that everything is fine. But when I open it again the second time, the fields are become blank. This happens when you trigger the “PerformClick” of “BindingNavigator” under the Form Load event.

This is not actually the common mistake that I encounter. But maybe, you encounter this problem also if you are used with VB 6.0 before.

Here’s the code to open the windows form the correct way:

  1. Dim

    SalesReturn As

    New

    frmSalesReturn

  2. With

    SalesReturn
  3. .

    InvoiceID

    =

    InvoiceID

  4. .

    ShowDialog

    (

    )
  5. End

    With

The above code is just one of the examples on my POS in VB.NET version. In the line:

  1. Dim

    SalesReturn As

    New

    frmSalesReturn

You have to declare the form as new instance. Because in VB.NET you cannot directly refer to a form like this:

  1. With

    frmSalesReturn
  2. ‘your statement here
  3. End

    With

So this means that every time you’d like to open your form, you have to use the “New” keyword to free it from memory when you close the form.

In VB 6.0 we can set the form to “Nothing” in the Form_Unload event. But this technique is not supported now in VB.NET.

I just want to share this to you because I mistakenly refer the wrong variable a few days ago in my code. Instead of SalesReturn I declare the frmSalesReturn in the “With” statement making the variable SalesReturn useless.

 

442,401

317,942

317,951

Top