在WPF中,我想根据提供的项目列表显示总和,平均值。
例如,我有一个带有Salary Property的Employee对象,我想根据员工列表计算总薪水。此外,employee对象是绑定到Items控件的数据,其中将编辑Salary /可以将新Employee添加到列表中。
任何人都可以为我提供解决方案吗?
答案 0 :(得分:1)
使用LINQ,你可以简单地按照
的方式做一些事情var averageSalary = yourEmployeeList.Average(employee => employee.Salary);
同样适用于Sum。
答案 1 :(得分:1)
我会这样做:
在您的代码中或ViewModel(如果使用MVVM)创建一个名为AverageSalary的新依赖项属性。
然后将员工的薪水更改为依赖属性。在后面的代码中,您可以监听Employee.Salary何时更改。 (参见this link for details on that)当它发生变化时重新计算上面列出的平均值,然后将其分配给您创建的AverageSalary依赖项属性。
然后将您的UI绑定到AverageSalary属性,它应该随员工的工资变化而更新。