日期:2014-05-19  浏览次数:20814 次

DataGrid 列 计算 问题!200分求答!
我的意思是在Datagrid   中   根据第一列、第二列输入数字后,按回车在第三列自动显示合计.


------解决方案--------------------
沙发

------解决方案--------------------
keypress事件,然后计算
------解决方案--------------------
你可以在你的DataGrid的数据源中(比如DataTable)添加一个表达式列就行了.这个表达式来自前两个列的和.
这样表达式列就会在改变前两列值的时候自动的来更新显示了.
------解决方案--------------------
应该没有问题吧! 在keypress事件中 获取刚才编辑的行号 跟要计算的列
------解决方案--------------------
参考下:
DataColumn.Expression 属性
获取或设置表达式,用于筛选行、计算列中的值或创建聚合列。

属性值
用来计算列的值,或创建聚合列的表达式。表达式的返回类型由列的 DataType 来确定。
比如:

DataColumn totalColumn = new DataColumn();
totalColumn.DataType = System.Type.GetType( "System.Decimal ");
totalColumn.ColumnName = "total ";
totalColumn.Expression = "price + tax ";

------解决方案--------------------
给个笨办法:
当你在datagrid中输入值时自然会保存起来,计算完重新绑定就可以了

当然也可以用JS来解决,在datagrid加事件判断并计算后修改第三列,你看一下源码很容易知道
------解决方案--------------------
学习...


------解决方案--------------------
只要改在keypress里计算就行了,上面是在数量变化的时候计算