[VB.NET] Variabelen Form2 => Form1

Pagina: 1
Acties:
  • 116 views sinds 30-01-2008
  • Reageer

  • Mephix
  • Registratie: Augustus 2001
  • Laatst online: 25-11-2025
Zoveel verschillende manieren gevonden op google en GoT search enzow.. allemaal lijken ze voor VB6 geschikt ofzo, want ze werken niet.

Ik heb dus in Form1 een stelletje textboxes als klantnaam, klantadres, klanttelefoon etc..

Ik klik op een knoppie en open daarmee Form2 (Form2.ShowDialog(Me)) en kan daar vanuit een database een klant selecteren.

De klant heeft een ID die ik terug wil geven aan Form1 door de knop Selecteer. Op die manier kunnen we dan in Form1 de rest van de gegevens van die klant ophalen en deze in de textboxes zetten.

argh :(

  • CrazyBernie
  • Registratie: Februari 2001
  • Laatst online: 22-08 18:53

CrazyBernie

Good for you better for me

Je zou een global variabele kunnen gebruiken voor de hele applicatie

Die moet dan in de class main komen van de app.

  • Mephix
  • Registratie: Augustus 2001
  • Laatst online: 25-11-2025
Sja, ik heb dus een frmMain die het mainvenster is van de app.. als ik daar een variabele declareer als bijv.:

Public strNaam As String

Hoe zet ik daar dan een waarde in vanuit een ander form ?
ik kan hem niet aanroepen met strNaam en ook niet met frmMain.strNaam

thnx

  • whoami
  • Registratie: December 2000
  • Nu online
CrazyBernie schreef op 28 February 2003 @ 17:02:
Je zou een global variabele kunnen gebruiken voor de hele applicatie

Die moet dan in de class main komen van de app.


Ga snel je mond spoelen.
Global var's zijn evil.

Mephix:
check even dit topic:
[rml][ VB.NET] waardes van een andere form?[/rml]

https://fgheysels.github.io/


  • DukeMan
  • Registratie: Mei 2000
  • Niet online
Wat je kan doen is het volgende:
(Deze code komt achter de knop waar je form2 wilt oproepen.)

Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
Dim frmForm2 as new Form2

'Geef form2 weer
frmForm2.ShowDialog(me)

'Kijk of in form2 op OK is gedrukt
If frmForm2.DialogResults = DialogResults.OK Then

  'Haal text op uit textbox in form2 en zet deze in textbox op form1.
  Me.txtID.Text = frmForm2.txtID.text

End If

Zorg ervoor dat je in form2 op een ok knop of iets dergelijks kan klikken, waarna je in de procedure die dan aangeroepen wordt het volgende staat:

Visual Basic .NET:
1
2
3
4
5
Private Sub cmdOk_Click(..) handles cmdOk.Click
  'Stel dialogresult in
  Me.DialogResults = Dialog.Ok
  Me.Hide()
End Sub


Dit zou moeten werken.
(Ik zit momenteel niet achter een compiler, dus kan niet zeggen of de code 100% ok is.)

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 22-03 18:12
gewoon vanuit form2 form1 gebruiken.

stel je heb een public var blaat in form1 staan.

gewoon ergens in form2 zoiets als dit doen.

form1.blaat = "waarde"

zelfde werkt gewoon voor een textbox

form1.textbox.text = "string"

Noushka's Magnificent Dream | Unity


  • whoami
  • Registratie: December 2000
  • Nu online
Tsss.... global vars, public vars..... Dat zijn toch allemaal dingen die je zoveel mogelijk moet vermijden hoor.
VB.NET biedt veel meer mogelijkheden dan VB6 (oa op OO gebied), maar dan moet je er wel op een goede manier gebruik van maken, en niet op dezelfde manier blijven prutsen zoals je in vb6 gewend was.

https://fgheysels.github.io/

Pagina: 1