Recuperer valeur de textbox d'un form1 dans un autre form2 [Résolu]

Messages postés
79
Date d'inscription
mercredi 22 octobre 2008
Statut
Membre
Dernière intervention
17 juin 2009
- - Dernière réponse : Whismeril
Messages postés
13351
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
2 juin 2019
- 1 juin 2019 à 08:23
je veux recuperer la valeur saisie ds un textbox d'un form1 dans un aitre form2
je fais une methode
dans form1
        public string hj()
        {
            return (textBox1.Text);
        }
dans form2
            Form1 f = new Form1();
            string kj = kko.hj();
            MessageBox.Show(kj);
il m affoche un text box vide
Merci d'avance
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
1863
Date d'inscription
lundi 28 novembre 2005
Statut
Modérateur
Dernière intervention
14 février 2015
22
3
Merci
C'est pas parce que tu postes plusieurs messages dans la même journée que tu dois éviter de dire bonjour dans chaque.

Tout d'abord, ton code ne pourra pas compiler parce que "kko" n'existe pas. Je suppose que dans cet exemple, tu voulais utiliser f.
Ensuite, textBox1, on comprends ce que c'est. f c'est un nom simple qui nous permet de ne pas trop nous tromper. Mais kj, hj, kko... Tu comprends peut-être de quoi il s'agit mais pas nous.

Bon, j'explique ton code :
- Je crée une nouvel objet (vide) de type Form1.
- Je crée un string qui contient la valeur du contenu de la textBox1 de la Form1 que je viens à peine de créer (que je n'ai même pas affiché, dont tous les champs sont évidemment vides ou à leur valeur par défaut)
- J'affiche la valeur de mon string
=> S'il est vide, c'est normal !

L'important est d'avoir une référence vers ton objet Form1 déjà créé et affiché.
Alors soit tu apprends comment passer des références d'une form à une autre :
http://www.csharpfr.com/codes/PASSAGE-PARAMETRES_26735.aspx
Soit tu transforme ta Form1 en singleton (Google => singleton C# =>212 000 résultats )

Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -

Dire « Merci » 3

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CodeS-SourceS

Codes Sources 135 internautes nous ont dit merci ce mois-ci

Commenter la réponse de krimog
Messages postés
79
Date d'inscription
mercredi 22 octobre 2008
Statut
Membre
Dernière intervention
17 juin 2009
0
Merci
bonjour,
Merci bien pour votre réponse
desolé car j ai pa dis bonjour dans mon premier message
pour  kko c f ; c'est une faute
Commenter la réponse de cs_baby85
Messages postés
1
Date d'inscription
samedi 1 juin 2019
Statut
Membre
Dernière intervention
1 juin 2019
0
Merci
Bjr,
En Form1
Tu vas sur la procedure textbox.Leave, tu entre le code suivant:
Form2 f = new form2()
f.textbox2.text = textbox1.text
Whismeril
Messages postés
13351
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
2 juin 2019
275 -
BONJOUR
La charte que tu as accepté aujourd’hui en t’inscrivant, stipule, entre autre de n pas écrire en sms.

De plus cette question est résolue depuis 10, aucun intérêt donc de la sortir de son sommeil, sauf à révolutionner les réponses apportées.

Et c’est là qu’on en arrive au contenu de ton code, c’est contraire au principe de base de la programmation objet, et C# est un langage objet: un élément constitutif d’un objet ne doit pas être accessible directement de l’extérieur.

Baby85 avait utilisé un getter et un setter, ça c’est juste, même s’il l’avait mal mis en œuvre.
Tu peux lire le lien posté par Krimog, et celui-ci https://codes-sources.commentcamarche.net/faq/11107-interactions-entre-form-en-net-c-et-vb-net
Commenter la réponse de MoRhiFidel