J'ai une application Windows Forms avec deux contrôles ListBox sur le même formulaire. Ils ont tous les deux leur SelectionMode défini sur 'MultiExtended'.La modification d'une sélection ListBox modifie la sélection d'autres ListBox. Que se passe-t-il?
Lorsque je change la sélection de l'un la sélection des autres changements.
Maintenant, je pensais avoir fait quelque chose de stupide avec mes gestionnaires SelectedIndexChanged, alors je les ai supprimés et les ai réécrits à partir de zéro, et j'ai eu le problème. J'ai donc créé une toute nouvelle application WinForms et j'ai fait glisser deux ListBox sur la surface des formulaires.
Dans le constructeur je les ai remplis avec les suivants.
List<Thing> data = new List<Thing>();
for (int i = 0; i < 50; i++) {
Thing temp = new Thing();
temp.Letters = "abc " + i.ToString();
temp.Id = i;
data.Add(temp);
}
listBox1.DataSource = data;
listBox1.DisplayMember = "Letters";
listBox1.ValueMember = "Id";
List<Thing> data2 = new List<Thing>();
for (int i = 0; i < 50; i++) {
Thing temp = new Thing();
temp.Letters = "abc " + i.ToString();
temp.Id = i;
data2.Add(temp);
}
listBox2.DataSource = data2;
listBox2.DisplayMember = "Letters";
listBox2.ValueMember = "Id";
Ensuite, j'ai construit et exécuté l'application.
Commencé à sélectionner des valeurs pour voir si les symptômes étaient présents. Et ils étaient!
Il s'agit littéralement de tout le code que j'ai ajouté au formulaire, je n'avais pas ajouté de gestionnaires d'événements, je l'ai essayé avec le paramètre SelectionMode défini sur 'One' et 'MultiExtended'. Est-ce que quelqu'un peut me donner une idée de pourquoi cela se passe-t-il?
Vive
Oui , Juste les deux membres. Une classe vraiment simple uniquement pour mon exemple. –