在asp.net gridview上,如何用千位分隔数字(后面带C#)
我一直在后端尝试以下行(分别)(没有用,它们只是舍去了小数位)
row["Applied_Amount_Varience_Sum"] = string.Format("{0:#,###0}", Convert.ToDecimal(row["Applied_Amount_Varience_Sum"]));
row["Applied_Amount_Varience_Sum"] = Convert.ToDecimal(row["Applied_Amount_Varience_Sum"]).ToString("#,##0.00");
row["Applied_Amount_Varience_Sum"] = String.Format("{0:n}", Convert.ToDecimal(row["Applied_Amount_Varience_Sum"]));
row["Applied_Amount_Varience_Sum"] = Convert.ToDecimal(row["Applied_Amount_Varience_Sum"]).ToString("N0");
行是对数据库中表的引用(我正在遍历返回的每个对象并遍历行)
我将其放置在绑定到gridview的位置。所以基本上我在绑定之前就更改了这些属性以使其具有逗号,但它没有这样做
我尝试过的线会改变这一点
1092.00
对此
1092
但我正在努力实现这一目标
1,092
*编辑*
这在模板字段中(因为我需要它作为与onclick函数的链接
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Applied Amount Variance">
<ItemTemplate>
<asp:LinkButton ID="LbPath" runat="server"
Text='<%# Eval("Applied_Amount_Varience_Sum") %>'
CommandName="BindExpand"
OnCommand="BindExpand"
CommandArgument='<%#Bind("Applied_Amount_Varience_Sum") %>'>
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
最佳答案
如果您正在寻找货币用途
DataFormatString="{0:c}"
否则使用
DataFormatString="{0:N2}"
尝试
Text='<%# Eval("Applied_Amount_Varience_Sum","{0:c}") %>'
要么
Text='<%# Eval("Applied_Amount_Varience_Sum","{0:N2}") %>'