Comment vérifier l'indice de zone de liste déroulante basée sur la chaîne?

J'ai un ComboBox avec 3 chaîne codée en dur valeurs:

A
B
C

Si j'essaie de modifier la valeur actuellement sélectionnée basé sur SelectedValue, SelectedItem, ou SelectedText, ni de changer l'index pour le bon élément.

Actuellement, je suis en train de faire quelque chose comme:

switch (str)
{
    case 'A':
        comboBox.SelectedIndex = 0;
        break;
    case 'B':
        comboBox.SelectedIndex = 1;
        break;
    case 'C':
        comboBox.SelectedIndex = 2;
        break;
}

Mais comme vous pouvez le voir, c'est un plutôt faible de la solution et se cassent si les articles sont commandés à nouveau, modifié ou ajouté.

Les meilleures façons?

OriginalL'auteur Ryan Peschel | 2012-11-19