Problème de données entre 2 formulaires

Signaler
Messages postés
6
Date d'inscription
mercredi 28 avril 2004
Statut
Membre
Dernière intervention
27 juillet 2004
-
Messages postés
134
Date d'inscription
vendredi 19 mars 2004
Statut
Membre
Dernière intervention
6 juin 2007
-
Bonjour, travaillant sous .NET :

j'ai deux fomulaires form1 et form2

dans le form1, j'ai une listbox ListBox1

J'aimerai récuperer dans une textBox de la form2 la valeur de la listBox1 selectionnée

J'ai donc celà
form1 ....

'form1Load
dim form2 as new form
form.show()

ListBox1 ....

form2 ....

TextBox1 ....

private sub textboxchanged(....)
dim form as Form1
TextBox1.Text=form.ListBox1.SelectedItem
end sub

Celà me renvoie une erreur comme quoi, il ne trouve pas l'objet ListBox1...

J'ai donc opté pour autre chose :

form1 ....
'variable globale :
dim strwork as String

'form1Load
dim form2 as new form
form.show()

ListBox1 ....

private sub ListBox1_Selectedchanged(....) handles ....
.....

strwork = ListBox1.SelectedItem
end sub

public function get_nom()
return(strwork)
end sub

form2

form2 ....

TextBox1 ....

form2 ....

TextBox1 ....

private sub textboxchanged(....)
dim form as Form1
TextBox1.Text=form.get_nom()
end sub

Et j'ai toujours mon erreur..... comment faire ?

1 réponse

Messages postés
134
Date d'inscription
vendredi 19 mars 2004
Statut
Membre
Dernière intervention
6 juin 2007

le problème vient que dans ton évennement textboxchanged, tu crée une nouvelle instance de form1.
à ta place, je ferait un truc du style :

dans un module :
public f1 as new form1
public f2 as new form2

sub main()
Application.Run(f1) 'ceci lance ton application avec l'affichage de ta form1

end sub

dans les propriétés du projet, tu le fait démarrer sur main
et à chaque fois que tu dois faire référence à une de tes deux form, tu passe par f1 ou f2 :

par exemple dans le code de ta form1 :

private sub listbox1_selecteditemchanged(...)
f2.textbox.text=me.listbox1.selecteditem
end sub

est-ce que tu cherchait ?