Как проверить, выбран ли элемент в поле со списком или нет в C#?

У меня есть поле со списком, в котором я должен отображать даты из базы данных. Пользователь должен выбрать дату из поля со списком, чтобы продолжить, но я не знаю, как сделать пользователя осведомленным о выборе элемента из поля со списком, чтобы продолжить.

какой процесс следует выполнить, чтобы пользователь мог получить сообщение, если он не выбрал дату из комбо?

9 ответов


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

вот идеальное кодирование, которое проверяет, выбран ли элемент поля со списком или нет:

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

вы можете использовать это:

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

вы хотите использовать DropDownStyle = DropDownList, чтобы вы могли легко убедиться, что пользователь выбрал запись из списка и не может ввести случайный текст в поле. Добавьте пустой элемент к элементам перед его заполнением (или "Пожалуйста, выберите"). Теперь значение по умолчанию автоматически пусто, и тест прост: просто проверьте, что SelectedIndex > 0.


проверьте свойство text следующим образом

if (combobox.text != String.Empty)
{
//continue
}
else
{
// error message
}

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

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

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

можно использовать SelectedIndex или SelectedItem свойства ComboBox.


Pl. Примечание ComboBox.Текст проверяет только текст, который находится в редактируемой области ComboBox, поэтому он не должен использоваться, когда вы хотите проверить, есть ли какой-либо выбор из ComboBox.

это будет работать всегда.

        int a = ComboBox.SelectedIndex.CompareTo(-1);

        if (a == 0)
        {
            MessageBox.Show("Please select something.");
        }
        else
        {
            // do something if combo box selection is done.!
        }