IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

[débutant] passage de variable d'une fenêtre à une autre


Sujet :

C#

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 10
    Points : 6
    Points
    6
    Par défaut [débutant] passage de variable d'une fenêtre à une autre
    Bonjour,

    Je débute en C#, et je suis en train de travailler sur les fenêtres.
    Je n'arrive pas à passer une donnée de ma form1 vers ma forme2, autrement dit, d'utiliser ds ma form2 une donnée de ma form1.
    J'ai essayé "public void..." mais ça ne marche pas.

    Voila le code de la Form1:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    namespace test3
    {
        public partial class IMC : Form
        {
            public IMC()
            {
                InitializeComponent();
            }
             /***********************************************************************************/
    /*                              Poids?                                           */    /***********************************************************************************/
            public void Poids_TextChanged(object sender, EventArgs e)
            {
     
            }
     
    //Appel de la forme 2 en cliquant sur un bouton:
     
            public void generate_Click(object sender, EventArgs e)
            {
                Form2 frm = new Form2();
                frm.Show();
            }
     
      }
    }
    et le code de la form2:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    namespace test3
    {
        public partial class Form2 : Form
        {
            public Form2()
            {
                InitializeComponent();
                poids_form2.Text = Poids.Text ;
            }
     
            private void poids_form2_TextChanged(object sender, EventArgs e)
            {
     
            }
     
        }
    }
    Je pense pas que ce soir très compliqué mais en tant que débutant, je m'embrouille assez facilement dans ce que je trouve sur le net!

    Merci d'avance
    CG

  2. #2
    Matthieu Dordolo
    Invité(e)
    Par défaut
    Cela dépend ce que tu veux faire... Tu peux utiliser le constructeur de ta classe et passer un objet, une variable etc en argument... Genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    string MyText = "Hello World";
    Form2 MyForm = new Form2(MyText);
    Ou encore utiliser des champs public de ta class :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Form2 MyForm = new Form2();
    MyForm.MyText = "Hello World";
    Et j'en passe

  3. #3
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    salut

    LA question est souvent posé sur ce forum, cherche un peu...

    Le mieux, c'est d'avoir tes données dans une classe connu par les deux formes...et dont tu passeras une instance via le constructeur ou une méthode des formes...

    En théorie, une forme n'a pas a connaitre une autre pour échanger des infos avec elle... il est plus propre en programmation de séparer les données de leur représentation...

    Regarde l'excellent tutoriel sur le MVC sur ce site

    The Monz, Toulouse
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    salut

    dans ta deuxieme form

    tu declare le constructeur avec un parametre

    public Form2(string _poid)
    {
    InitializeComponent();
    poids_form2.Text = _poid ;
    }

    et dans ta form1

    tu rajoute un bouton ( envoyer ) par example, pour pouvoir passer (afficher) la form2
    et dans la methode envoyer_click
    tu met le code :
    {
    test3.form2 frm = new test3.form2(poid_form1.text);


    frm.Show();

    }

Discussions similaires

  1. [Débutant] Ajouter à une fenêtre une icone des ressources du projet
    Par Thomsy92 dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 26/08/2009, 00h53
  2. [GD] Passage de variable à un script générant une image
    Par Mayhem555 dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 27/05/2009, 23h36
  3. [Débutant] Transmission de variable d'une fenêtre à l'autre
    Par Persuadeur dans le forum Interfaces Graphiques
    Réponses: 6
    Dernier message: 14/12/2008, 22h46
  4. Passage d'un paramètre d'une fenêtre à une autre ?
    Par almisuifre dans le forum C++Builder
    Réponses: 10
    Dernier message: 06/12/2004, 22h42
  5. [C#] Passage de valeur d'une fenêtre à une autre
    Par groum999 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 13/09/2004, 14h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo