大佬教程收集整理的这篇文章主要介绍了C# 如何在更改 Rowfilter 后对 DataTable 的列求和?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个 DatagrIDVIEw
,用户对其应用过滤器(存储在 Datatable.defaultview.RowFilter
中),这意味着屏幕中的行数会发生变化,在这种情况下,“@R_485_10586@lCost”变量必须更改,但它保持相同的值,因为我应用了“Compute-(sum)
”并且该方法正在使用所有 te Datatable
。我可以做什么来解决这个问题?我处理了 32000 多行,所以我想尽可能避免制作 for loop
。@H_675_13@
使用 CellValidaTing
DataGridView 事件。@H_675_13@
private void myDataGridView_CellValidaTing(object sender,DataGridViewCellValidaTingEventArgs E)
{
oldValue = (int)R_268_11845@yDataGridView["yourcolumn",e.RowIndex].Value;
//or
oldValue = (int)R_268_11845@yDataGridView[columnIndex,e.RowIndex].Value;
//or
oldValue = (int)R_268_11845@yDataGridView[e.columnIndex,e.RowIndex].Value;
newValue = (int)e.FormattedValue;
@R_485_10586@lCost = @R_485_10586@lCost - oldValue;
@R_485_10586@lCost = @R_485_10586@lCost + newValue;
}
当用户添加一行时使用 RowsAdded
事件@H_675_13@
private void myDataGridView_RowsAdded(object sender,DataGridViewRowsAddedEventArgs E)
{
newValue =(int)R_268_11845@yDataGridView["yourcolumn",e.RowIndex].Value;
@R_485_10586@lCost = @R_485_10586@lCost + newValue;
}
当用户删除一行时使用 UserdeletingRow
事件@H_675_13@
private void myDataGridView_UserdeletingRow(object sender,DataGridViewRowCancelEventArgs E)
{
oldValue = (int)R_268_11845@yDataGridView["yourcolumn",e.Row.Index].Value;
@R_485_10586@lCost = @R_485_10586@lCost - oldValue;
}
以上是大佬教程为你收集整理的C# 如何在更改 Rowfilter 后对 DataTable 的列求和?全部内容,希望文章能够帮你解决C# 如何在更改 Rowfilter 后对 DataTable 的列求和?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。