我有一个数字1234.56789
我想它只显示为1234.56(在DataGrid中)
格式怎么表示呢?
我想它只显示为1234.56(在DataGrid中)
格式怎么表示呢?
解决方案 »
- asp.net高分求解答
- 关于浏览器大小改变div布局的问题
- 参数化查询比"变量"查询有哪些好处啊?参数化查询能防sql注入?
- DropDownList控件SelectedIndexChanged事件的奇怪问题,谁能解释一下?
- 服务器端TextBox,为什么在客户端重新赋值后,服务器端访问时还是初始值啊?急,在线。。
- webservice的应用
- 100分!!!请问,如何实现类似于 windiff的文本比较功能?有没有现成是组件或第三方控件啊?
- 看不懂代码,特来请教。。。。。。。。。。。。紧急。。。。线上等!!!!!!!!!!!
- 一个小问题:新建窗口
- ASP.NET数据库问题
- 这个语句是什么意思,作用是什么
- 怎么将指定路径的图片写到数据库里
<ItemTemplate>
<asp:Label runat="server" Text='<%# ((double)DataBinder.Eval(Container, "DataItem.数据字段名")).ToString("F2")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
试试。
<ItemTemplate>
<asp:Label id=Label7 runat="server" Text='<%#BindNum(((System.Data.DataRowView)Container.DataItem)["数字"].ToString())%>'></asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
.cs 中加入以下函数public string BindNum(string num )
{
string str = string.Format("{0:n2}",decimal.Parse(num));
return str;
}
第二种方法在 DataGrid 的 ItemDataBound 事件中编写private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemIndex>=0)
{
System.Data.DataRowView dv =(System.Data.DataRowView)e.Item.DataItem;
string num = dv["数字"].ToString();
string str = string.Format("{0:n2}",decimal.Parse(num));
e.Item.Cells[0].Text = str; //这里指定这一列的文本,自行更改
}
}
d、D 十进制格式。
e、E 科学计数(指数)格式。
f、F 固定点格式。
g、G 常规格式。
n、N 数字格式。
r、R 往返格式,确保将已转换成字符串的数字转换回数字时具有与原数字相同的值。
x、X 十六进制格式。 --------------------------------------------------------------------------------double val=Math.PI;
Console.WriteLine(val.ToString( )); //displays 3.14159265358979
Console.WriteLine(val.ToString("E"));//displays 3.141593E+000
Console.WriteLine(val.ToString("F3");//displays 3.142
int val=65535;
Console.WriteLine(val.ToString("x")); //displays ffff
Console.WriteLine(val.ToString("X")); //displays FFFF
Single val=0.123F;
Console.WriteLine(val.ToString("p")); //displays 12.30 %
Console.WriteLine(val.ToString("p1")); //displays 12.3 %
默认格式化会在数字和百分号之间放入一个空格。定制方法如下:
其中NumberFormatInfo类是System.Globalization命名空间的一个成员,因此该命名空间必须导入到程序中。
Single val=0.123F;
object myobj=NumberFormatInfo.CurrentInfo.Clone( ) as NumberFormatInfo;
NumberFormatInfo myformat=myobj as NumberFormatInfo;
myformat.PercentPositivePattern=1;
Console.WriteLine(val.ToString("p",myformat)); //displays 12.30%;
Console.WriteLine(val.ToString("p1",myformat)); //displays 12.3%;
格式化具有很大的灵活性。下面的例子演示一个没有意义的货币结构:
double val=1234567.89;
int [] groupsize={2,1,3};
object myobj=NumberFormatInfo.CurrentInfo.Clone( );
NumberFormatInfo mycurrency=myobj as NumberFormatInfo;
mycurrency.CurrencySymbol="#"; //符号
mycurrency.CurrencyDecimalSeparator=":"; //小数点
mycurrency.CurrencyGroupSeparator="_"; //分隔符
mycurrency.CurrencyGroupSizes=groupsize;
// 输出 #1_234_5_67:89
Console.WriteLine(val.ToString("C",mycurrency));