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

Windows Forms Discussion :

listbox form1 to listbox form2


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Inscrit en
    janvier 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : janvier 2007
    Messages : 44
    Points : 23
    Points
    23
    Par défaut listbox form1 to listbox form2
    voilà bonjour a tous je vien de m'inscrir sur ce site pour j'espere y trouver de l'aide car je viens de dbuter en c# et pas evident en deux mots je suis homer simpsons avec un livre d'algorithme lol

    pour en venir a mon probleme j'essaye de transferer des datas d'une listebox vers une autre c.à.d j'ai deux forms les données de listbox1 form1 doivent aller dans la listbox2 de form2(form2 est appelée avec un bouton "appel"dans form1) ben voila si quelqu'un peu m'aider
    un grand merci d'avance

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    août 2005
    Messages
    32
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : août 2005
    Messages : 32
    Points : 38
    Points
    38
    Par défaut
    Bonjour,

    Comment alimentes-tu la ListBox de ta Form n°1 (tableau de string[]) ? Dans ce cas, pourquoi ne pas très simplement associer à ce tableau une visibilité de type "public", voire "internal" et ainsi dupliquer tes données au sein de la ListBox de ton Form n°2 via la gestion de l'événement associé à ton bouton "appel".
    Peut-être devras-tu revoir la structure de ton appli à ce sujet ?


  3. #3
    Membre du Club Avatar de psycho_38
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 55
    Points : 61
    Points
    61
    Par défaut
    Salut ghost73

    Si ta listbox est alimenter avec un tableau de string[] la meilleure solution est celle de jeff_76960 sinon tu parcour les elements de ta listBox tu les stock dans une variable et apres ta plusieurs possiblité : passage de valeur par le constructeur, propriété (get - set)etc...

    Bon courage

  4. #4
    Membre à l'essai
    Inscrit en
    janvier 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : janvier 2007
    Messages : 44
    Points : 23
    Points
    23
    Par défaut
    tout d'abord merci a vous de vos réponses, voila pour ne pas trop m'enbouiller et simplifier les choses je vous poste le code ainsi je pense que vous verez mieux

    form2 qui prend les données venant de deux combobox les charge dans sa listbox avant de les envoyer dans la listbox de la form1(même bouton) et j'ai ajouter un bouton pour ouvrir la form1 et voir les données mais quand j'ouvre la form1 je ne vois rien da sa listbox

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    // ---------------------------------------FORM2
    namespace essai
    {
    public partial class Form2 : Form
    {
    Form1 MyForm1=new Form1();
    public Form2()
    {
    InitializeComponent();
    }
    public Form1 maform1//**propriete de type form1
    {
    get { return MyForm1; }
    set { MyForm1 = value; }
    }
     
    private void button1_Click(object sender, EventArgs e)
    {
    listBox1.Items.Add(comboBox1.SelectedItem);
    listBox1.Items.Add(comboBox2.SelectedItem);
    //for (int i = 0; i < listBox1.Items.Count; i++)
    MyForm1.listBox1.Items.Add(comboBox1.SelectedItem);
    MyForm1.listBox1.Items.Add(comboBox2.SelectedItem);
    }
     
    private void button2_Click(object sender, EventArgs e)
    {
    Form1 frm = new Form1();
    frm.Show();
    }
    }
    }
    //----------------------------------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
    27
    28
    29
    30
    31
     
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
     
    namespace a_effacer
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }
     
    private void button1_Click(object sender, EventArgs e)
    {
    Form2 frm = new Form2();
    frm.maform1 = this;
    }
     
    private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
    Form2 frm = new Form2();
    frm.maform1 = this;
    }
    }
    }
    MERCI à VOUS

    juste pour dire que les listbox sont en public

  5. #5
    Membre du Club Avatar de psycho_38
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 55
    Points : 61
    Points
    61
    Par défaut
    Bon je tai fai un petit programme qui correspond a ce que tu voulais faire
    Ca pourra peut etre aider

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    public partial class Form2 : Form
        {
            public Form2()
            {
                InitializeComponent();
            }
            /// <summary>
            /// Rempli la Listbox avec les valeurs de comboBox1 et comboBox2
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void button1_Click(object sender, EventArgs e)
            {
                for (int i = 0; i < comboBox1.Items.Count; i++)
                {
                    listBox1.Items.Add(comboBox1.Items[i]);
                }
                for (int i = 0; i < comboBox2.Items.Count; i++)
                {
                    listBox1.Items.Add(comboBox2.Items[i]);
                }
            }
            /// <summary>
            /// Ouvre Form1 en lui passant comme un parametre un tableau de string[] contenant les valeurs de listBox1
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void button2_Click(object sender, EventArgs e)
            {
                string[] lol = new string[listBox1.Items.Count];
                for(int i = 0;i< listBox1.Items.Count;i++)
                {
                   lol[i] = listBox1.Items[i].ToString();
                }
     
                Form1 oForm1= new Form1(lol);
                oForm1.Show();
            }
     
     
        }
    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
    public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
            /// <summary>
            /// Constructeur surcharger qui recoit les valeurs de listBox1 de Form2
            /// </summary>
            /// <param name="elements"></param>
            public Form1(params string[] elements)
            {
                InitializeComponent();
                for (int i = 0; i < elements.Length;i++ )
                {
                    listBox1.Items.Add(elements[i]);
                }
            }
        }
    Bien Entendu ce n'est pas la meilleure solution (prog fait en 2mn) mais ca marche
    Tu n'est pas obligé de surchager le constructeur tu peux mettre le Tableu en public etc.....

    Bon Courage

    Psycho

  6. #6
    Membre à l'essai
    Inscrit en
    janvier 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : janvier 2007
    Messages : 44
    Points : 23
    Points
    23
    Par défaut c#
    un grand merci a tous vous êtes tous tres cooooooooooooool
    je commence à me diriger mais le bout du chemin est encore loin.
    petit à petit l'oiseau fait son nid @+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MVVM] ListBox dans une ListBox
    Par Trophonius dans le forum Windows Presentation Foundation
    Réponses: 3
    Dernier message: 09/08/2012, 11h11
  2. Listbox dans une Listbox
    Par istace.emmanuel dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 01/08/2011, 22h55
  3. DrawItem d'un listbox...
    Par scorpiwolf dans le forum C++Builder
    Réponses: 5
    Dernier message: 22/06/2007, 15h50
  4. Réponses: 2
    Dernier message: 21/07/2006, 18h40
  5. [VB.NET]utiliser un composant situé sur form1 sur le form2
    Par Sytchev3 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 31/05/2006, 18h16

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