检查值是否出现在组合框中

本文关键字:组合 是否 检查 | 更新日期: 2023-09-27 18:22:19

在将数组中的某个项添加到组合框之前,我想检查该项是否出现在组合框中,以避免重复

我不允许使用LINQ

代码:

private void ToonCategorien()
    {
        cboCategorie.Items.Clear();
        foreach (String sCategorie in marrCategorie){
            if (!cboCategorie.Items.Contains(sCategorie))
            {
                ComboBoxItem cboItem = new ComboBoxItem();
                cboItem.Content = sCategorie;
                cboCategorie.Items.Add(cboItem);
            }
        }
    }

很抱歉在我的C#代码中使用了荷兰语。

所以marrCategorie是一个数组,它包含我从StreamReader中读取的所有类别。问题是,无论如何,他都添加了所有内容。我认为这是if循环中的一个问题。

我还尝试了if(cboCategorie.Text.Contains(sCategorie)),但没有结果。

我还不允许直接发布图片,很抱歉使用了超链接):

结果

提前感谢!

解决方案,感谢Bolu:

    private void ToonCategorien()
    {
        cboCategorie.Items.Clear();
        foreach (String sCategorie in marrCategorie){
            if (!cboCategorie.Items.Contains(sCategorie))
            {
                cboCategorie.Items.Add(sCategorie);
            }
        }
    }

检查值是否出现在组合框中

您在这里比较stringComboBoxItem,我认为您可以使用字符串:例如:

private void ToonCategorien()
    {
        cboCategorie.Items.Clear();
        foreach (String sCategorie in marrCategorie){
            if (!cboCategorie.Items.Contains(sCategorie))
            {                
                cboCategorie.Items.Add(sCategorie);
            }
        }
    }