C# 输入记录前选中列表框
在C# 输入记录前选中列表框,c#,asp.net,C#,Asp.net,在ASP.NET/C 35;中,如何在文本框中输入值之前检查列表框是否有重复值 我试过了 If(ListBox1.Items.Contains(TextBox1.Text)) { // do nothing } else { ListBox1.Items.Add(TextBox1.Text); } 我在第一行出错。我想你可以这样做 if (ListBox1.Items.IndexOf(ListBox1.Items.FindByValue(TextBox1.Text.Trim())) ==
ASP.NET/C 35;
中,如何在文本框
中输入值之前检查列表框
是否有重复值
我试过了
If(ListBox1.Items.Contains(TextBox1.Text))
{
// do nothing
}
else
{
ListBox1.Items.Add(TextBox1.Text);
}
我在第一行出错。我想你可以这样做
if (ListBox1.Items.IndexOf(ListBox1.Items.FindByValue(TextBox1.Text.Trim())) == -1)
{
// value is not exist (insert new)
}
试试这个
ls.Items.FindByText(TextBox1.Text) != null
这可能会有所帮助。您需要检查listboxitem的值,而不是listboxitem本身
if(ListBox1.Items.FindByText(TextBox1.Text) == null)
ListBox1.Items.Add(TextBox1.Text);
bool contains = false;
foreach(ListItem item in ListBox1.items)
{
if(item.value.equals(TextBox1.text)
contains = true;
}
if(!contains)
ListBox1.Items.Add(TextBox1.Text);
或者如果你可以使用linq
if(!listBox.Items.Any(item => item.Value.Equals(textBox.text)
ListBox1.Items.Add(TextBox1.Text);
ListBox.Items是ListItems的集合,其工作原理如下:
ListItem new_item = new ListItem(TextBox1.Text);
if (!ListBox1.Items.Contains(new_item))
{
ListBox1.Items.Add(new_item);
}
else
{
// handle duplicates
}
错误1
Error 1“System.Web.UI.WebControls.ListItemCollection.Contains(System.Web.UI.WebControls.ListItem)”的最佳重载方法匹配'有一些无效参数C:\Users\Me\Documents\Visual Studio 2010\WebSites\spam\spam\u whitelist.aspx.cs 19 17 C:\…\spam\
Error 2Error 2参数1:无法从'string'转换为'System.Web.UI.WebControls.ListItem'C:\Users\Me\Documents\Visual Studio 2010\WebSites\spam\spam\u whitelist.aspx.cs 19 41 C:\…\spam\
什么对列表项调用IndexOf的意义?最好重写if(ListBox1.Items.FindByValue(TextBox1.Text)==null){}