想要在列表中的特定项目上显示

时间:2013-11-19 18:39:17

标签: c# wpf

        if (DataList.Any(item => item.ID == int.Parse(Txtbox2.Text)))
        {
            Txtbox1.Text += string.Join(";", DataList.Select(o => o.DataString()));
        }

我正在尝试将列表放入文本块,但仅限于符合特定条件的项目。 我唯一拥有的是它在满足IF时显示整个列表,是否可以在实际制作列表的部分中设置条件?

编辑:所有DataString方法都是Data Class中的一个方法,它将所有的vairous数据类型转换为字符串输出。

1 个答案:

答案 0 :(得分:0)

您想使用Where,而不是Any

int value = int.Parse(Txtbox2.Text); //consider using TryParse here
var strings = DataList.Where(item => item.ID == value)
    .Select(item => item.DataString());

Txtbox1.Text += string.Join(";", strings);

另请注意,不是一遍又一遍地解析文本框值,而是将其解析一次并将结果存储在变量中。