Vérifiez que le texte de l'élément de la zone de liste est identique à celui de Liste < chaîne > C #

StackOverflow https://stackoverflow.com/questions/1604773

Question

J'essaie de le faire pour vérifier qu'il a le même élément dans la liste que celui qui est actuellement sélectionné dans la zone de liste

Pourquoi ce code ne fonctionne-t-il pas? Il devrait fonctionner inconditionnellement car le texte généré à partir de la liste est extrait du choix de liste "

if (RemovePackages_Listbox.Text == choicetitle[RemovePackages_Listbox.SelectedIndex])
            {
                MessageBox.Show("The above code worked!");
            }
Était-ce utile?

La solution

Essayez ceci

if (RemovePackages_Listbox.SelectedItem.ToString() == choicetitle[RemovePackages_Listbox.SelectedIndex])
            {
                MessageBox.Show("The above code worked!");
            }

else
{
    MessageBox.Show("RemovePackages_Listbox.SelectedItem.ToString() is "+RemovePackages_Listbox.SelectedItem.ToString()+" and choicetitle[RemovePackages_Listbox.SelectedIndex] is "+choicetitle[RemovePackages_Listbox.SelectedIndex]);
}

Et dites-nous ce que vous voyez dans la boîte de message contextuelle?

Autres conseils

RemovePackages_Listbox.SelectedIndex

renverra un index de base zéro de l'élément sélectionné dans le contrôle ListBox.

Vous demandez donc:

Si le texte affiché dans ma liste de sélection est identique à la chaîne de ma liste ChoiceTitle à la position SELECTEDINDEX -

Faites ceci.

Vérifiez trois fois.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top