从KeyPair类型的ObservableCollection中查找Max值

时间:2014-09-24 09:14:35

标签: c# wpf linq

我想从KeyPair类型的ObsevableCollection中找到Max Value ...这是我的KeyPair类

    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 个答案:

答案 0 :(得分:1)

所以假设你有一个KeyPair列表

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);

答案 1 :(得分: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);

祝你好运; - )