Vérifiez que le texte de l'élément de la zone de liste est identique à celui de Liste < chaîne > C #
-
05-07-2019 - |
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!");
}
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