9
votes

Comment vérifier si l'élément de la liste déroulante est sélectionné ou non en C #?

J'ai une boîte déroulante dans laquelle je dois afficher les dates d'une base de données. L'utilisateur doit sélectionner une date de la liste déroulante pour continuer, mais je ne sais pas comment rendre l'utilisateur au courant de sélectionner l'élément dans la liste déroulante d'abord afin de continuer.

Quel processus doit être suivi de sorte qu'un utilisateur puisse recevoir un message s'il n'a pas sélectionné la date du combo?


0 commentaires

9 Réponses :


1
votes

Vérifiez la propriété de texte comme celle-ci xxx


0 commentaires

1
votes
if (cboDate.SelectedValue!=null)
{
      //there is a selected value in the combobox
}
else
{
     //no selected value
}

0 commentaires

0
votes

Vous pouvez utiliser sélectionnéexindex ou SELECTELITEM Propriétés du Combobox .


0 commentaires

13
votes
if (string.IsNullOrEmpty(ComboBox.SelectedText)) 
{
 MessageBox.Show("Select a date");
}

3 commentaires

Je sais que ce post est vieux, mais comme je l'ai trébuché, certains pourraient aussi trébucher. Dans mon cas, le «Combobox.SelectedText» n'a pas fonctionné, je devais utiliser 'Combobox.text'. J'ai seulement vérifié qu'il y a une autre réponse avec mon approche, mais appart de ma réponse à cette réponse, ici pourrait attraper l'oeil plus facilement.


@Stinkycat a raison ... j'ai continué à obtenir une valeur nulle lorsque vous utilisez "SélectionnéText" ou "SelectedValue" mais simplement en utilisant "Text" fonctionne.


Il est plus facile d'utiliser Combobox.selectedItem.tostring pour que vous ayez une idée de ce qui a été sélectionné ou si rien n'a été sélectionné du tout. Mais merci pour la réponse que cela a aidé.



2
votes

Vous voudrez utiliser Dropdownstyle = Dropdownlist afin que vous puissiez facilement vous assurer que l'utilisateur a choisi une entrée dans la liste et ne peut pas saisir de texte aléatoire dans la case. Ajoutez un élément vide aux éléments avant de le remplir (ou «Sélectionnez»). Maintenant, la valeur par défaut est automatiquement vide et le test est simple: vérifiez simplement que sélectionnée * 0.


1 commentaires

Je suppose que cela devrait être le style par défaut d'une combinaison



3
votes

Vous pouvez utiliser ceci:

if (Convert.ToInt32(comboBox1.SelectedIndex) != -1)
{
    // checked
}
else
{
    // unckecked
}


0 commentaires

4
votes

Voici le codage parfait qui vérifie si l'élément de la boîte déroulante est sélectionné ou non:

if (string.IsNullOrEmpty(comboBox1.Text))
{
    MessageBox.Show("No Item is Selected"); 
}
else
{
    MessageBox.Show("Item Selected is:" + comboBox1.Text);
}


0 commentaires

0
votes

pl. Remarque Combobox.text Seulement vérifie le texte à la région modifiable du ComboBox, de sorte que ce n'est pas censé être utilisé lorsque vous souhaitez vérifier s'il y a une sélection à partir de la combinaison de ComboBox.

Cela fonctionnera toujours. xxx


0 commentaires

1
votes
if(combobox.Selectedindex==-1)
{
MessageBox.Show("Please Select an item");
}

else
{
MessageBox.Show("An Item was selected");
}

0 commentaires