如何根据组合框的内容测试文本框的值

  • 本文关键字:测试文本 何根 组合 c#
  • 更新时间 :
  • 英文 :


我正在检查文本框中输入的值是否与组合框的内容匹配。但我不满足这个条件。

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");
}

最新更新