我想弄清楚在wpf中计算DataGrid列总值的最佳方法是什么。
这样做的最佳做法是什么?
答案 0 :(得分:3)
您可以侦听将导致列中的值更改的各种事件,然后通过调用下面的“calculateTotal()”方法计算事件触发时的总计。
DataTables事件在此处定义:here
private int colTotal = 0; // class level
public Myclass()
{
// Add a ColumnChanged event handler for the table.
MyDataTable.ColumnChanged += new DataColumnChangeEventHandler(Column_Changed);
// wire up more event handlers here..
}
private static void Column_Changed(object sender, DataColumnChangeEventArgs e )
{
calculateTotal();
}
// calculate total of specified column
void calculateTotal()
{
colTotal = myDataSet.Tables["myTable"].Compute("SUM(myColumnName)", String.Empty);
}
colTotal将是绑定到文本框或标签
的公共属性public int ColTotal
{
get
{
return colTotal;
}
set
{
colTotal= value;
OnPropertyChanged("ColTotal");
}
}
答案 1 :(得分:0)
您必须使用for循环或在DataSet表行或DataGrid中,对其求和并在Label中显示结果
或
您可以在DataSet表列
上使用Compute