Sélectionner l'élément par défaut de Combobox C#

j'ai quelques articles sur ma collection D'articles ComboBox, et j'aimerais sélectionner un article de cette liste et le Définir comme article par défaut - quand l'application démarre - cet article est déjà sur combobox.

je suis en train d'essayer quelque chose comme ça:

SelectPrint11.SelectedIndex=2;

mais l'erreur est :) :

System.ArgumentOutOfRangeException: InvalidArgument=Value of '2' is not valid for 'SelectedIndex'

Edit:

je ne peux pas ajouter de commentaire maintenant.. des problèmes avec la connexion ou de quelque chose.. Mais sur ma liste il y a 3 articles. Printer1, Printer2, Printer3. Tous sont ajoutés dans Propriétés Combobox - > Items - > Collection

23
demandé sur Elfoc 2011-04-12 13:59:34

5 réponses

vous pouvez définir en utilisant SelectedIndex

comboBox1.SelectedIndex= 1;

OR

SelectedItem

comboBox1.SelectedItem = "your value"; // 

ce dernier ne fera pas d'exception si la valeur n'est pas disponible dans le combobox

EDIT

Si la valeur sélectionnée n'est pas spécifique, alors vous serait mieux avec ce

comboBox1.SelectedIndex = comboBox1.Items.Count - 1;
55
répondu V4Vendetta 2011-04-12 10:15:08

rappelez-vous que les collections en C# sont basées sur zéro (en d'autres termes, le premier élément dans une collection est à la position zéro). Si vous avez deux éléments de votre liste, et vous souhaitez sélectionner le dernier élément, utilisez SelectedIndex = 1.

5
répondu Michael Petrotta 2011-04-12 10:01:44

cela signifie que votre index selected est hors de la portée du tableau d'articles dans le combobox. Le tableau des articles dans votre boîte bascule est zéro, donc si vous avez 2 articles, c'est l'article 0 et l'article 1.

2
répondu Tony The Lion 2011-04-12 10:03:29
private void comboBox_Loaded(object sender, RoutedEventArgs e)
{
 Combobox.selectedIndex= your index;
}

OU si vous souhaitez afficher la valeur d'une comparaison 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 fonctionne pour moi.

0
répondu Ahmad 2017-04-04 06:23:36

tout d'abord, allez à la charge de forme où se trouve votre comboBox,

alors essayez ce code

comboBox1.SelectedValue = 0; / / affiche le 1er article de votre collection

-1
répondu IndexOutofBounds 2017-12-05 09:53:38