如何设置计算列保留2位小数

NetAnt007 2008-05-09 11:58:38
DataTable table = new DataTable();
DataColumn priceColumn = new DataColumn();
priceColumn.DataType = System.Type.GetType("System.Decimal");
priceColumn.ColumnName = "price";
priceColumn.DefaultValue = 6.9000;

// Create the second, calculated, column.
DataColumn taxColumn = new DataColumn();
taxColumn.DataType = System.Type.GetType("System.Decimal");
taxColumn.ColumnName = "tax";
taxColumn.Expression = "price * (1-0.1000)";

// Create third column.
DataColumn totalColumn = new DataColumn();
totalColumn.DataType = System.Type.GetType("System.Decimal");
totalColumn.ColumnName = "total";
totalColumn.Expression = "price * (1+0.1000)";

// Add columns to DataTable.
table.Columns.Add(priceColumn);
table.Columns.Add(taxColumn);
table.Columns.Add(totalColumn);

DataRow row = table.NewRow();
table.Rows.Add(row);
DataView view = new DataView(table);
dataGridView1.DataSource = view;

如何设置计算列保留2为小数,现在计算出来的数字都是带了很多位小数
...全文
453 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
JinJJ1402 2011-05-02
  • 打赏
  • 举报
回复
楼上,Round() !=四舍五入函数
onthebox 2008-05-09
  • 打赏
  • 举报
回复
Math里面不是有Round()……
NetAnt007 2008-05-09
  • 打赏
  • 举报
回复
i get it ,
公布一下我的方案。

totalColumn.Expression = Convert(a * 100, 'System.Int32')/100;
wudi626 2008-05-09
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 tigerleq 的回复:]
最简单的办法
帮定的dataset设置数据精度
[/Quote]

顺便问一下,这个应该怎么设置呢?谢谢!!
wudi626 2008-05-09
  • 打赏
  • 举报
回复
实在是没有办法的话,建议lz写一个截取函数,取小数点后面两位就可以了
贫僧又回来了 2008-05-09
  • 打赏
  • 举报
回复
数据库中带倒有四舍五入函数的!round();
tigerleq 2008-05-09
  • 打赏
  • 举报
回复
最简单的办法
帮定的dataset设置数据精度
ronankeller 2008-05-09
  • 打赏
  • 举报
回复
设置Format:{0:#.#0}
不过这个好像有进位问题,友情提示,C#中没有四舍五入。。。。
NetAnt007 2008-05-09
  • 打赏
  • 举报
回复
补充一点,是windows程序,不是asp.net

110,532

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧