Transmettre variable de Form2 à Form1 [Débutant]

deli2025 Messages postés 40 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 4 mai 2020 - 23 avril 2011 à 18:54
dodo7263 Messages postés 616 Date d'inscription mercredi 10 septembre 2008 Statut Membre Dernière intervention 9 février 2017 - 28 avril 2011 à 10:33
Bonjour,

Je débute en c# et la je rencontre depuis quelques jours des difficultés à passer des variables d'un Form à l'autre.

Je m'explique:

J'ai sur ma fenêtre principal (Form1) un lien menant à Form2 qui s'ouvre avec avec le code suivant :

private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
    // Crée un nouveau Form
    Form2 myForm = new Form2();

    // Et l'ouvre
    myForm.ShowDialog();
            
}


Sur cette nouvelle fenêtre on trouve un "RichTextBox" et un bouton "Ajouter".
Je souhaiterais donc que l'utilisateur l'utilise pour entrer du texte et que lorsqu'il clique sur "Ajouter" je récupère la valeur (tbUsers ) dans Form1

Voici le code de Form2 :

namespace WindowsFormsApplication1
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }


        private void btAjouter_Click(object sender, EventArgs e)
        {         
            // La chaine de destinataires
            string textUsers = rtbDestinataires.Text;

            // On défini le caractères de séparation
            char[] separateur = new Char[] { ',' }; // La virgule !

            // On découpe et on met sous forme d'un tableau
            string[] tbUsers = textUsers.Split(separateur, 100);

            

            this.Close();
        }

    }
}


J'ai essayé la réponse ci-dessous mais je n'arrive pas à en faire ce que je souhaite... A savoir pouvoir utiliser la valeur de tbUsers dans Form1

Merci d'avance pour votre aide car je commence à désespérer....

2 réponses

theflayer Messages postés 125 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 21 juin 2015 2
25 avril 2011 à 15:45
Salut, je suis pas certain vu que j'ai pas beaucoup d’expérience en C#, mais je crois que c'est un truc comme ca :

sur ta form1 :


public string myValue()
{
   return tbUsers;
}

// Et sur la form2 ou il y a le richTextBox :

        private void Ajouter_Click(object sender, EventArgs e)
         {
                Form1 f1 = (Form1)this.Owner;
                string myValue = f1.myValue();
                richTextBox1.Text = myValue;
        }



Voila j’espère que ça va t'aider. (Et surtout que c'est bon xD)
Mais il me semble que y'a pas mal de post pour ca déja tu pourra y jeter un oeil ça sera surment mieu que moi

Linux c'est une question de VI ou de MORE !
Si Bill Gates donnait du lait à ses programmeurs, ça ferait peut-être des OS costaud.
1
dodo7263 Messages postés 616 Date d'inscription mercredi 10 septembre 2008 Statut Membre Dernière intervention 9 février 2017 6
28 avril 2011 à 10:33
Salut,

En effet il y a cet excellent exemple : ici

@pluche

[b]"Chez ceux qui semblent très vertueux se cachent en général la vanité, l'orgueil, l'intolérance".

P.Coehlo (Maktub 2004)/b
0