Utilisation du contrôle Listbox:
1) Propriétés de contrôle
Articles
SelectedItems
Selectiomodes
2) Liaison des données
Datasoure
Membre de l'écran
Valuemenber
3) Exemple
Les éléments suivants commencent à expliquer l'utilisation du contrôle de la boîte de liste supérieure à un par un.
Tout d'abord, parlons des propriétés du contrôle.
(1) Éléments: utilisez cette propriété pour obtenir les propriétés de l'élément de contrôle de liste. Cette propriété peut être utilisée pour déterminer les éléments sélectionnés dans le contrôle de la liste. Lorsque vous ajoutez des éléments, vous pouvez les ajouter statiquement pendant la conception ou dynamiquement dans le code. Si vous ne souhaitez pas afficher des éléments ajoutés au moment de la conception, vous pouvez ajouter ce.Listbox1.items.clear () dans votre code; Seules les options ajoutées dans votre code sont affichées.
(2) SelectedItems: Obtenez la collection contenant les éléments actuellement sélectionnés dans la boîte de liste.
(3) SELECTIOMODES: Obtenez ou définissez la méthode utilisée pour sélectionner les éléments dans ListBox. Il y a quatre valeurs à choisir; La valeur par défaut est SelectionMode.one, et une seule peut être sélectionnée; La valeur de la propriété n'est pas ne peut pas être sélectionnée; Lorsque la propriété Multeextend est enfoncée, cliquez sur la souris tout en cliquant sur la touche Maj ou l'une des touches de changement de vitesse et des flèches (en haut, en bas, à gauche et à droite) en même temps, le contenu sélectionné sera étendu de l'élément sélectionné précédent à l'élément actuel. Appuyez sur la touche CTRL lors du clic sur la souris sélectionner ou ne vous sélectionnera pas un élément dans la liste; Lorsque la propriété est définie sur Multisimple, cliquez ou appuyez sur la barre d'espace sélectionner ou désélectionnera un élément dans la liste.
Ensuite, parlons de la liaison des données. Habituellement, les données sont variables, donc la liaison des données est requise. Il existe plusieurs types de liaison de données. L'une consiste à lier l'ensemble de données ou de données obtenu à partir de la base de données; L'autre consiste à personnaliser une classe pour lier les données dans la classe personnalisée. Il y a une petite différence entre la liaison des données en C # et la liaison des données dans ASP.NET. Après la liaison des données dans ASP.NET, une méthode de données doit être appelée, mais elle n'est pas nécessaire en C #. DisplayMember obtient ou définit les propriétés à afficher.
Enfin, faisons un exemple comme indiqué sur la figure:
Parlons simplement de la mise en œuvre de plusieurs méthodes importantes, afin que le code spécifique ne soit pas écrit ici. Mettez les options à la frontière gauche dans la frontière droite. Code:
La copie de code est la suivante:
for (int i = this.listbox1.selectedItems.count - 1; i> = 0; i -)
{
Menu menu = (menu) this.listbox1.selectedItems [i];
this.listbox2.items.add (menu);
this.listbox1.items.remove (i);
}
Bien que la fonction ci-dessus ait été mise en œuvre, il y a un problème, c'est-à-dire que l'élément de gauche devient l'ordre inverse après avoir atteint la droite. Ceci est le code dont nous avons besoin pour écrire l'ajout et déménager séparément, le code:
La copie de code est la suivante:
for (int i = 0; i <this.listbox1.selectedItems.Count; i ++)
{
Menu menu = (menu) this.listbox1.selectedItems [i];
this.listbox2.items.add (menu);
}
for (int i = this.listbox1.selectedItems.count - 1; i> = 0; i--)
{
this.listbox1.items.remove (i);
}
Jusqu'à présent, il y a un autre problème que lors de la sélection des premiers éléments dans la case, il n'y a pas de problème pour déplacer la droite, mais lors de la sélection des prochains éléments, les prochains éléments sont déplacés vers la boîte de droite et les premiers éléments sont déplacés de la boîte de gauche. La raison de ce problème est que nous
SelectedItems et les articles sont confus. C'est une erreur que de nombreux débutants sont enclins à faire. Code: