我想在添加新项目之前检查列表框中是否已存在某个项目。
if (TeamNameTextBox.Text != "")
{
if (TeamNameListBox.Items.FindByValue(TeamNameListBox.Text) == null)
{
TeamNameListBox.Items.Add(TeamNameTextBox.Text);
TeamNameTextBox.Text = "";
int teamCountUpdate = TeamNameListBox.Items.Count;
if (teamCountUpdate == 1)
{
TeamCount.Text = teamCountUpdate.ToString() + " Team";
}
else
{
TeamCount.Text = teamCountUpdate.ToString() + " Teams";
}
}
else
{
AddTeamSeasonError.Text = "This team has already been added";
}
}
else
{
AddTeamSeasonError.Text = "Please select a team";
}
我已经检查文本框是否为空白,但是我需要检查用户尝试添加的项目是否已经在列表框中。
我试过这行:
if (TeamNameListBox.Items.FindByValue(TeamNameListBox.Text) == null)
但这不起作用,关于如何进行检查的任何建议?
答案 0 :(得分:1)
使用此:
if (!TeamNameListBox.Items.Contains(TeamNameTextBox.Text))
TeamNameListBox.Items.Add(TeamNameTextBox.Text);
答案 1 :(得分:0)
我想你的意思是
// search if the textbox value is found in the list. this comment shouldn't be part of the code
if (TeamNameListBox.Items.FindByValue(TeamNameTextBox.Text) == null)
而不是
if (TeamNameListBox.Items.FindByValue(TeamNameListBox.Text) == null) // code from question
编辑:没有必要在变量旁边放置控件类型的名称
即使用TeamNameListBox
而不是teamNames
。而且,使用TeamNameTextBox
。而不是teamName
。
答案 2 :(得分:0)
认为您至少应该尝试使用TeamNameTextBox
代替TeamNameListBox
作为参数
if (TeamNameListBox.Items.FindByValue(TeamNameTextBox.Text) == null)