繁体   English   中英

如何检查值是否已存在于 ListBox 中?

[英]How can I check if a value already exists in a ListBox?

我想在将它添加到ListBox之前检查可能条目的值。

我有包含可能的条目值的TextBox

所以我想检查ListBox已经包含该值。

  • 如果此值已插入:请勿添加。
  • 如果不是:添加它。
if (!listBoxInstance.Items.Contains("some text")) // case sensitive is not important
            listBoxInstance.Items.Add("some text");
if (!listBoxInstance.Items.Contains("some text".ToLower())) // case sensitive is important  
            listBoxInstance.Items.Add("some text".ToLower());

只需将列表中的项目与您要查找的值进行比较。 您可以将项目转换为字符串。

if (this.listBox1.Items.Contains("123"))
{
   //Do something
}

//Or if you have to compare complex values (regex)
foreach (String item in this.listBox1.Items)
{
   if(item == "123")
   {
      //Do something...
      break;
   }
}

您可以使用 linq,

bool a = listBox1.Items.Cast<string>().Any(x => x == "some text"); // If any of listbox1 items contains some text it will return true.
if (a) // then here we can decide if we should add it or inform user
{
    MessageBox.Show("Already have it"); // inform
}
else
{
    listBox1.Items.Add("some text"); // add to listbox
}

希望有所帮助,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM