我试图找出计算 wpf 中 DataGrid 列总值的最佳方法。
- 我正在使用数据集在 DataGrid 中显示来自 sql 的数据(以及用于更新的 tableApapter)
- 我希望在编辑 DataGrid 中的数字时动态更新信息
- 我希望总和显示在 DataGrid 下方的标签/文本框或页脚中
执行此操作的最佳做法是什么?
最佳答案
您可以监听将导致列中的值发生更改的各种事件,然后在事件触发时通过调用下面的“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 将是绑定(bind)到文本框或标签的公共(public)属性
public int ColTotal
{
get
{
return colTotal;
}
set
{
colTotal= value;
OnPropertyChanged("ColTotal");
}
}
关于c# - 如何使用数据集计算wpf datagrid列的总计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14128796/