我有一个包含数据的数据表。我需要在数据表中添加另一列,该列具有相同的另一列值,但精度较低。
即原始列的值为12.123 但是新列的值为12.12
这样做的最佳方式是什么?
答案 0 :(得分:3)
像这样的东西
yourDataTable.Columns.Add("newCol", typeof(double));
foreach (System.Data.DataRow row in yourDataTable.Rows)
{
row["newCol"] = Math.Round(Convert.ToDouble(row["oldCol"]), 2);
}
答案 1 :(得分:1)
某些网格实现(如DevExpress XtraGrid)允许您使用未绑定的列并轻松为它们提供值。同样的事情将涉及一些基本DataGridView的黑客攻击,所以我有另一个建议。在您的类中添加一个新的只读属性: 十进制值1 {get;组; } decimal value2 {get {return Math.Round(value1,2); }} 这样您甚至不必担心列显示格式。
答案 2 :(得分:1)
制作计算列,以确保您的数据完整性不会受到侵犯
您可以看到此article以了解如何