如何计算/查找特定的列表视图项(类)?

时间:2013-05-26 14:57:40

标签: c# class listview windows-store-apps

我有一个用Classes(PlayCard)填充的listView。 我想用cardNumber计算具有相同值的类 如果listView中的数字超过两次,我希望testBool成为真正的

我已经得到了这个代码:

foreach (PlayCard pCard in listView1.Items)
{               
    if (listView1.Items.Count(i => i.cardNumber == pCard.cardNumber) > 1)
    {
        pCard.testBool = true;
    }
}

但我收到了一个错误:

  

'对象'不包含'cardNumber'的定义,没有   扩展方法'cardNumber'接受类型的第一个参数   可以找到'对象'。

class PlayCard
{
        public int cardNumber { get; set; }
        public int id { get; set; }
        public bool testBool = false;
}

2 个答案:

答案 0 :(得分:4)

我认为你的listView1是一个对象列表,而Object类没有cardNumber方法。如果您知道对象实际上是PlayCard个对象,那么演员应该解决问题,即

foreach (PlayCard pCard in listView1.Items)
{ 

    if (listView1.Items.Count(i => ((PlayCard)i).cardNumber == pCard.cardNumber) > 1) 
    // etc

答案 1 :(得分:1)

ListView控件只包含object类型的项目。

使用此if - 声明:

if (listView1.Items.Count(i => ((PlayCard)i).cardNumber == pCard.cardNumber) > 1)

现在应该可以使用了!