2009-06-21 7 views
1

En utilisant C#, disons que vous avez un ComboBox avec un DropDownStyle défini sur DropDown (il y a des éléments dans le menu déroulant mais l'utilisateur peut aussi entrer manuellement une valeur). Comment définir une valeur par défaut pour la zone de liste déroulante qui est pas dans la liste des valeurs dans la liste déroulante, mais commence par le texte à partir d'une sélection possible? Normalement, le paramètre ComboBox.Text fonctionne correctement, mais s'il existe un élément dans le menu déroulant commence par le le texte que vous souhaitez par défaut, il sélectionne automatiquement le premier élément de la liste qui commence par le texte. Par exemple:Comment définir un ComboBox par défaut * pas dans la liste déroulante * lorsqu'un élément de liste commence par le même texte qu'un élément déroulant?

Les valeurs dans le menu déroulant:
c:\program files\
c:\windows\
d:\media\

Valeur par défaut Affectation
myComboBox.Text = "C:\";

Résultat
La valeur initiale de ComboBox lorsque le formulaire s'ouvre est "c:\program files\".

Alors qu'est-ce que je fais mal? Comment définir correctement une valeur par défaut d'un élément qui ne figure pas dans la liste déroulante qui commence par une sélection possible?

Répondre

1

Je ne pouvais pas reproduire le comportement que vous décrivez. Ajouter les trois valeurs via la collection Items puis définir la valeur initiale sur "c: \" (vous avez omis un @ dans votre exemple de code) a bien fonctionné. Ma conjecture est que quelque chose d'autre dans votre code définit la valeur de la zone de liste déroulante après l'avoir définie.

0

J'ai réussi à faire en sorte que les éléments de la ComboBox soient ComboBoxItems (je ne vois pas pourquoi cela ne fonctionnerait pas avec d'autres types). Définissez ComboBox.Text comme vous êtes et assurez-vous que SelectedIndex = -1 et que vous avez besoin de IsEditable = True.

1

Le code suivant fonctionne-t-il?

myCombo.SelectedIndex = myCombo.FindString(@"c:\"); 

Note: Je ne l'ai pas essayé. Recherché des propriétés/méthodes qui pourraient aider à utiliser le réflecteur.

Questions connexes