2014-09-24 102 views
0

我想從ObsevableCollection型密鑰對發現最高值......這是我的密鑰對類找到最大值密鑰對

public class KeyPairs : ViewModelBase 
    { 
    private string _key; 
    public string Key 
    { 
     get 
     { 
      return _key; 
     } 
     set 
     { 
      _key = value; 
      OnPropertyChanged(() => Key); 
     } 
    } 

    private double _value; 
    public double Value 
    { 
     get 
     { 
      return _value; 
     } 
     set 
     { 
      _value = value; 
      OnPropertyChanged(() => Value); 
     } 
    } 
} 

我用

var max = newCriteria.KeyValue.Max(values => values.Value);" 

但沒有顯示任何結果。

+2

你可以張貼的鍵值是如何在NewCriteria – 2014-09-24 09:18:51

+1

定義爲什麼創建一個類的?爲什麼不使用已經存在的東西?新列表>(); – 2014-09-24 09:31:46

+0

假設'KeyValue'被定義爲'ObservableCollection ',你的代碼應該返回最大'Value' ... – har07 2014-09-24 10:40:41

回答

1

所以假設你有密鑰對

var list = new List<KeyPair>(); 

// assign the data to the list 
// here... 

// get max value from the list 
var max = list.Max(d => d.Value); 
0

問題是,也許在你的KEYVALUE財產清單。 以下片段適用。

public class KeyPairs 
{ 
    public string Key { get; set; } 
    public double Value { get; set; } 
} 

var keyValuePairs = new List<KeyPairs> 
{ 
    new KeyPairs {Key = "a", Value = 30}, 
    new KeyPairs {Key = "b", Value = 20} 
}; 

double max = keyValuePairs.Max(pairs => pairs.Value); 

祝您好運;-)