我正在检查文本框中输入的值是否与组合框的内容匹配。但我不满足这个条件。
string Dnaam = tbAnimal.Text;
for (int i = 0; i < cmbAnimals.Items.Count; i++)
{
if (Dnaam == (cmbAnimals.Items.GetItemAt(i).ToString()))
{
MessageBox.Show("Het Animal is gevonden, het is de " + i + "item");
}
}
MessageBox.Show("Het Animal is not gevonden");`
尝试如下:
string Dnaam = tbAnimal.Text;
bool animalFound = false;
for (int i = 0; i < cmbAnimals.Items.Count; i++)
{
if (Dnaam == (cmbAnimals.Items.GetItemAt(i).ToString()))
{
MessageBox.Show("Het Animal is gevonden, het is de " + i + "item");
animalFound = true;
break;
}
}
if (!animalFound)
MessageBox.Show("Het Animal is not gevonden");`
要从组合框中获取值,请尝试使用此方法代替cmbAnimals.Items.GetItemAt(i).ToString()
。
string Dnaam = tbAnimal.Text;
for (int i = 0; i < cmbAnimals.Items.Count; i++)
{
if (Dnaam == cmbAnimals.GetItemText(cmbAnimals.Items[i])
{
MessageBox.Show("Het Animal is gevonden, het is de " + i + "item");
}
}
MessageBox.Show("Het Animal is not gevonden");`
您也可以尝试Contains
方法。
if (cmbAnimals.Items.Contains(Dnaam))
{
MessageBox.Show("Het Animal is gevonden, het is de " + i + "item");
}
似乎使用FindString不区分大小写或FindStringExact方法是你需要切线修剪TextBox值
这个例子将在组合框中设置选中的项目(是的,您可以使用MessageBox代替选择项目),如果找到文本,则通知文本未定位。
string searchFor = tbAnimal.Text.Trim();
int foundIndex = cmbAnimals.FindString(searchFor);
if (foundIndex > -1)
{
cmbAnimals.SelectedIndex = foundIndex;
}
else
{
MessageBox.Show($"{searchFor} not found");
}