检查表中的名称是否已在 WPF 的组合框中列出
本文关键字:组合 WPF 是否 检查表 | 更新日期: 2023-09-27 18:34:42
我想检查表中的名称是否已在组合框中列出,如果是,请不要插入。 如果不插入。我尝试了以下方法:
public void display()
{
try
{
sc.Open();
string Query = "select * from Part";
SqlCommand createCommand = new SqlCommand(Query, sc);
SqlDataReader dr = createCommand.ExecuteReader();
while (dr.Read())
{
string Name = dr.GetString(1);
if (Name != cbPartners.Text)
{
cbPart.Items.Add(Name);//Displaying a list in the Combo Box
}
else
{
cbPart.Items.Clear();
}
}
sc.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
试试这个(使用 linq(
if (cbPart.Items.Cast<ListItem>().Select(f => f.Text).Contains(Name))
{
cbPart.Items.Add(Name);//Displaying a list in the Combo Box
}
else
...
if (cbPart.FindStringExact(Name) == -1)
{
cbPart.Items.Add(Name);
}
作为旁注,您不需要选择所有列,因为您只需要一列
string Query = "select partname from Part";
不清楚为什么使用cbPart.Items.Clear();
删除else
情况下的所有项目,当找到匹配项目时,该行将删除已经存在的组合框项目。