2013-01-02 70 views
0

如何計算等於某個特定值的項目並將其置於標籤中?計數集合中的項目數

class Conversation 
{ 
    public string Id { get; set; } 
    public int Readen { get; set; } 
    public string Recipient { get; set; } 
} 

在Readen屬性中,存在等於「1」或等於「0」的值。如何計算每個等於「1」的Readen?

更新;

試過這種呼叫會話被填充後:

 private void CountUnread() { 


     int i = 0; 

     Conversation cs = new Conversation(); 

     if (cs.Readen == "1") { 
      i++; 
     } 
     MessageBox.Show(i.ToString()); 

    } 

的MessageBox顯示零

+2

請問你的問題涉及到WPF或Datagrid的?你應該刪除這些標籤。 – Clemens

+0

確定改變了它:-) – keno

回答

0

一些這樣的事...

Conversation cs = new Conversation(); //如果你是在另一個類創建實例

if (cs.Readen.Equals(1)) { //Your Statements Here... }

+0

之前嘗試過的,但不起作用(cs.Readen爲空)。我不需要做一個循環或什麼東西去進入物品? – keno

+0

你是否正確分配,檢查分配的地點是否正確分配...... – RajeshKdev

+0

是的,在對話被填滿之後,我用方法調用它。 (看我的文章) – keno

3

使用Linq,或者更確切地說,Enumerable.Count方法:

IEnumerable<Conversation> items = ... 
... 

var count = items.Count(c => c.Readen == 1); 
+0

我沒有得到IEnumerable ..後面有什麼「items =」? :/(剛開始使用wpf) – keno

+0

這不是WPF,只是簡單的.Net Framework。 [IEnumerable](http://msdn.microsoft.com/en-us/library/9eekhta0(v = vs.110).aspx)是.Net中所有集合類型的基本接口,我想你會去在某種集合中組織你「對話」對象。 – Clemens

+0

是的,我的對話被一個ObservationCollection綁定以顯示到一個數據網格中 – keno