J'ai quelques éléments dans ma collection d'éléments ComboBox
, et je voudrais sélectionner un élément dans cette liste et le définir comme élément par défaut - au démarrage de l'application - cet élément est déjà sur comboBox
.
J'essaye quelque chose comme ça:
SelectPrint11.SelectedIndex=2;
mais l'erreur est:
System.ArgumentOutOfRangeException: InvalidArgument=Value of '2' is not valid for 'SelectedIndex'
Modifier:
Dans mylist
sont 3 éléments, Printer1
, Printer2
, Printer3
. Tous sont ajoutés dans ComboBox Properties -> Items -> Collection
Vous pouvez définir en utilisant SelectedIndex
comboBox1.SelectedIndex= 1;
OR
SelectedItem
comboBox1.SelectedItem = "your value"; //
Ce dernier ne lèvera pas d'exception si la valeur n'est pas disponible dans la combobox
[~ # ~] modifier [~ # ~]
Si la valeur à sélectionner n'est pas spécifique, alors vous feriez mieux de
comboBox1.SelectedIndex = comboBox1.Items.Count - 1;
N'oubliez pas que les collections en C # sont basées sur zéro (en d'autres termes, l'élément premier dans une collection est à la position zéro). Si vous avez deux éléments dans votre liste et que vous souhaitez sélectionner le dernier élément, utilisez SelectedIndex = 1
.
Cela signifie que votre index sélectionné est hors de la plage du tableau d'éléments dans la zone de liste déroulante. Le tableau des éléments de votre zone de liste déroulante est base zéro, donc si vous avez 2 éléments, il s'agit de l'élément 0 et de l'élément 1.
private void comboBox_Loaded(object sender, RoutedEventArgs e)
{
Combobox.selectedIndex= your index;
}
OU si vous souhaitez afficher une valeur après avoir comparé dans la zone de liste déroulante
foreach (var item in comboBox.Items)
{
if (item.ToString().ToLower().Equals("your item in lower"))
{
comboBox.SelectedValue = item;
}
}
J'espère que ça va aider, ça marche pour moi.