2

这就是我检查用户是否在组合框中输入空的方式

if (string.IsNullOrEmpty(comboBox.Text))
{
MessageBox.Show("No Item is Selected"); 
}

如何检查用户输入是否在组合框项目中?例如,组合框项目是 a、b、c。当用户在组合框中输入“d”然后他离开时,必须显示一个消息框。

4

3 回答 3

4

正如 George 所说,您可以尝试在您的 ComboBox 的 Leave EventHandler 中放置类似的内容,检查该项目是否包含在 ComboBox 的项目集合中。

private void comboBox1_Leave(object sender, EventArgs e)
{
    ComboBox cb = (ComboBox)sender;
    if (! cb.Items.Contains(cb.Text))
    {
        MessageBox.Show("No Item is Selected");
    }
}
于 2013-07-17T20:18:57.893 回答
2

试试这个:

int resultIndex = -1;
resultIndex = comboBox.FindExactString("d");

if(resultIndex == -1)
{
    MessageBox.Show("No Item is Selected");
}
于 2013-07-17T20:22:48.717 回答
1

在这种情况下,@Mark Hall 的答案是正确的。但是如果你想限制用户不使用组合框中项目集合中没有的项目,我建议你将DropDownStyle的属性设置为DropDownList。

comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;
于 2013-07-17T21:20:21.273 回答