格式化 datagridview 列中的十进制值
我想格式化一列总和值:例如我有 19240 我想要它 192.40 我尝试了很多方法,但什么都没有
dgw.Grid.Columns["Sum"].DefaultCellStyle.Format="0:00" // 192:40
dgw.Grid.Columns["Sum"].DefaultCellStyle.Format="n" // 19240.00
dgw.Grid.Columns["Sum"].DefaultCellStyle.Format="0.00" // 19240.00
dgw.Grid.Columns["Sum"].DefaultCellStyle.Format=string.Format("{0:0.##}") // Exception
我希望数据网格视图中该列中的所有项目具有相同的格式
编辑:一种方法:
我使用这种方法来获得我想要的东西
int _sum;
public int Sum
{
get { return _sum; }
set { _sum= value; }
}
public double SumAsdouble
{
get
{
if (_sum== 0)
return 0;
else
return Convert.ToDouble(_sum) / 100;
}
}
,我隐藏了 Sum 并显示了 SumAsdouble
,这对我有用
I want to formatting a column of sum value: for example I have 19240 I want it 192.40 I tried many way but nothing
dgw.Grid.Columns["Sum"].DefaultCellStyle.Format="0:00" // 192:40
dgw.Grid.Columns["Sum"].DefaultCellStyle.Format="n" // 19240.00
dgw.Grid.Columns["Sum"].DefaultCellStyle.Format="0.00" // 19240.00
dgw.Grid.Columns["Sum"].DefaultCellStyle.Format=string.Format("{0:0.##}") // Exception
I want all items in that column in datagrid view with the same format
edit : a way to do it:
I use this methode to get what I want
int _sum;
public int Sum
{
get { return _sum; }
set { _sum= value; }
}
public double SumAsdouble
{
get
{
if (_sum== 0)
return 0;
else
return Convert.ToDouble(_sum) / 100;
}
}
and I make hidden the Sum and show the SumAsdouble
and this work for me
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
单元格中的值是多少?
看起来是 19240,这意味着将其格式化为 2DP 将返回 19240.00,如您所见。如果您想要 192.40,那么您需要先除以 100 - 您将无法使用字符串格式执行此操作。
What is the value in the cell?
It looks like it is 19240, which means that formatting it to 2DP will return 19240.00, as you are seeing. If you want 192.40, then you'll need to divide by 100 first - you'll not be able to do this with string formats.
我假设您总是希望最后两位数字是十进制数字,并且您的号码始终是五位数字长。然后您可以使用“000.00”或“%”作为格式字符串。或者,您可以将您的数字除以 100。
I assume that you always want to have the last two digits to be decimal digits and that your number is always five digits long. Then you can use "000.00" or "%" as format string. Alternatively, you can devide your number by 100.