DateTable中Compute,列Expression 问题
代码:
//dtYSJL为datatable定义的
dtYSJL.Columns["values"].Expression = "values1*values2"; //values1和values2为dtYSJL两个列名
这样在datatable中就能计算出values的值,而不用自己去写算法;我要的就是这样的效果;之后我要对values列进行处理,比如values列某行计算出来的列数值为:1.12356,我要四舍五入处理为1.1236;意思就是说对列values列计算完后还得进行四舍五入保留小数点的处理;但是处理小数点时候;会出现该values列为只读,我把该列dtYSJL.Columns["values"].ReadOnly = false;//报错“不能更改表达式列的 ReadOnly 属性”我查了些资料,可能是因为values列有计算公式,变成了聚合列,所以不能修改它的ReadOnly 属性,而在设置该列的Expression时,系统自动将该列的ReadOnly 变成了true。请问各位CSDN大哥,你们教教我怎么处理这个问题,用什么方法呢?

解决方案 »

  1.   

    自己顶,CSDN中的牛人何在,帮我解答下
      

  2.   

    计算时可通过Math.Round来处理。显示时,可参照:http://hi.baidu.com/libinguest/item/64e97716364df325f7625c7e
      

  3.   


    问题是我的datatable跟一个gridview连接,datatable数据改变,gridview数据跟着改变
      

  4.   

    gridview
    的单元格可以做数据显示处理。在单元格事件里即可处理。
      

  5.   

    private void DataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
            {              DataGridView1.Rows[e.RowIndex].DefaultCellStyle.Format="F2";
            }
      

  6.   

    你用的是gridview还是datagridview呢?如datagridview可用7楼的试试