Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Passage de variable entre deux formulaires


Information sur le tutorial

Catégorie :.NET Tutorial .NET ( DotNet ) Date de création : 10/10/2008 11:18:29 Vu : 1 576 fois

Note :
Aucune note

Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note


Description

Ceci est mon premier mini tuto, et c'est juste un passage de variable entre deux formulaires.Cela permet de recuperer une variable d'un formulaire et de l'afficher dans un textbox d'un autre formulaire.

Tutorial


Créer le premier formulaire, ajouter un textBox1 et un bouton,Saisissez un texte dans le texteBox1 et cliquez sur le bouton pour afficher la valeur du textBox1 dans un autre textBox2 du second formulaire.

Voila ce que vous devez avoir pour les deux formulaires:

Pour le form1:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;


namespace passage_de_variable

{

public partial class Form1 : Form

{



public Form1()

{

InitializeComponent();

}



private void button1_Click(object sender, EventArgs e)

{

Form Form2 = new Form2(textBox1.Text );

Form2.ShowDialog();

}


private void Form1_Load(object sender, EventArgs e)

{

}

}

}



pour le form2:



using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;


namespace passage_de_variable

{

public partial class Form2 : Form

{

public Form2( string value)

{

InitializeComponent();

textBox2.Text = value;

}


private void Form2_Load(object sender, EventArgs e)

{


}



}

}

signaler à un administrateur
Commentaire de tmcuh le 13/10/2008 12:41:29

C'est un passage par valeur. La meilleur technique est d'utilisé les owner afin d'accéder aux objects, propriétés, variables du owner.

signaler à un administrateur
Commentaire de billou_13 le 15/10/2008 16:37:36

Bonjour,

En effet, l'exemple est simple mais ne montre qu'un exemple de passage de paramètre.
Je profites donc de ce tutorial pour mettre un lien similaire qui montre un autre moyen de passer les paramètres entre forms:
Auteur: Bidou
Source: http://www.csharpfr.com/codes/PASSAGE-PARAMETRES_26735.aspx

Ceci permettra de compléter les différentes solutions,


Billou_13

signaler à un administrateur
Commentaire de yelima le 18/10/2008 12:53:25

Oui effectivement c'est un exemple simple de passage de variable qui peut aider certain.

signaler à un administrateur
Commentaire de Mokost le 25/10/2008 16:12:36

Tu peux aussi modifier la propriété "Modifiers" du contrôle la passer de "Private" à "Public" et y accéder a tout moment.
Ex : Tu prend ton contrôle "textBox2" tu lui affecte "public" à sa propriété "Modifiers".
et cela te donnerai ceci :
private void button1_Click(object sender, EventArgs e)

{

Form Form2 = new Form2();//on aura plus besoin de parametre a spécifier

Form2.textBox2.Text = textBox1.Text;
Form2.ShowDialog();

}

L'avantage réside dans le fait que si tu crée un formulaire que tu garde en mémoire
tu pourras accéder a tout ses composant publiques n'importe quand.
De plus quand tu fais un formulaire avec plein de champ a renseigner
par exemple nom, prenom, adresse, code postale, ville .... tu n'auras pas besoin d'ajouter un constructeur pour tout ses paramètres.

Personnelement c'est ce que je fais quand j'ai besoin d'envoyer des données entre formulaire.


Cordialement.

signaler à un administrateur
Commentaire de Cafekafe le 30/10/2008 21:30:37

Simple question, comment fait-on pour garder des données plus complexes ( exemple: le nom d'un client situé dans une Collection, a partir d'une bibliothèque de classes) entre plusieurs formulaires?

signaler à un administrateur
Commentaire de tmcuh le 31/10/2008 14:39:23

Cafekafe tu dois avoir un objet "parent" à tous tes formulaires, qui lui possèdera l'information.
ex :
Feuille main (parent à tous)
public maclass monobject ;
Dans une méthode de main on crée la feuille fille
FeuilleFille ff = new FeuilleFille();
ff.owner = This;

dans la feuille fille : lobject = ((Main)this.owner).monobject;
La feuille fille peut utilisé l'objet de son parent.

Autre possibilité, utilisé des classes static et on met dedans:
public static maclass monobject
et on y accède toujours par MaclassStatic.monobject

signaler à un administrateur
Commentaire de sws2007 le 14/11/2008 11:18:04

merci yelima pour cet exemple

signaler à un administrateur
Commentaire de tunit68 le 19/11/2008 11:01:40

Comment est-ce qu'on peut passer 2 variables grâce à cette méthode? car il ne me semble pas possible de passer plus d'un paramètre.

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,016 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.