检查组合框是否为空C#

时间:2019-03-26 12:37:26

标签: c# winforms combobox

我正在尝试使用Windows应用程序窗体中的C#检查组合框是否为空。以下是两种可能的方法:

  1. 如果(string.IsNullOrEmpty(comboBox1.Text))
  2. 如果(comboBox1.SelectedIndex == -1)

为了确保用户从下拉列表中选择一个值,并写下自己的答案,这是最好的方法? 根据我的研究,第二种方法(如果(comboBox1.SelectedIndex == -1))将满足我的需求。我说的对吗?

3 个答案:

答案 0 :(得分:1)

如果您只是要确保用户从可用列表中选择一项,只需将组合框的DropDownStyle更改为DropDownList

或者如果您希望允许他们键入但又确保它在列表中,则可以执行以下操作:

var txt = comboBox1.Text;

if(string.IsNullOrEmpty())
  return;

var test = comboBox1.Items?.OfType<string>().ToList().Any(x => x?.Trim() == txt?.Trim());

因此,如果test为假,则表示他们在可用项目列表中没有选择/键入的内容

答案 1 :(得分:0)

对于组合框,您可以使用下面的代码检查其是否为空

 if(comboBox1.Items.Count == 0 )
 {
    // your code
 }

答案 2 :(得分:0)

这是我尝试的方法,并且有效。随时发表评论:

if (comboBox1.SelectedIndex > -1 )