GridView列数字、货币和日期的显示格式

本文介绍如何在ASP.NET的GridView控件中正确地格式化Money类型的字段,解决金额显示时的小数点及千位分隔符问题。通过调整DataFormatString属性并设置HtmlEncode参数为False,实现数据的正确显示。

形式 语法 结果
数字 {0:N2} 12.36  
数字 {0:N0} 13  
货币 {0:c2} $12.36  
货币 {0:c4} $12.3656  
货币 "¥{0:N2}" ¥12.36  
科学计数法 {0:E3} 1.23E+001  
百分数 {0:P} 12.25%      (P and p present the same. )
日期 {0:D} 2006年11月25日  
日期 {0:d} 2006-11-25  
日期 {0:f} 2006年11月25日 10:30  
日期 {0:F} 2006年11月25日 10:30:00  
日期 {0:s} 2006-11-26 10:30:00  
时间 {0:T} 10:30:00  
在设置GridView数据绑定控件的模版列时,总要设置显示的格式,这里是我查询一些资料后统计出来的。还有一个常规的选项是用数据库中默认的格式显示。

 

在GridView中如何格式化Money型字段(downmoon)?

amount为Money型字段,无论如何只能显示成
1234.5600 
而不能显示成
1,234.56


<asp:BoundField DataField="amount" HeaderText="amount" DataFormatString="{0:n2}"  />
                   <asp:BoundField DataField="amount" HeaderText="amount" DataFormatString="{0:c2}"  />
也不行!
后来在MSDN上找到了答案

 

<asp:BoundField DataField="amount" HeaderText="amount" DataFormatString="{0:#,###.00}"  HtmlEncode="False" />
关键在于HtmlEncode="False"

 

        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="PKID"
            DataMember="DefaultView" DataSourceID="SqlDataSource1">
            <Columns>
                <asp:BoundField DataField="PKID" HeaderText="PKID" InsertVisible="False" ReadOnly="True"
                    SortExpression="PKID" />
               
                <asp:TemplateField>
                        <HeaderTemplate>
                           amount</HeaderTemplate>
                        <ItemTemplate>
                            <asp:Label ID="txtMoney" Text=''<%# Decimal.Parse(DataBinder.Eval(Container.DataItem,"amount").ToString())%>'' runat="server" />
                        </ItemTemplate>
                    </asp:TemplateField>
                <asp:BoundField DataField="TestID" HeaderText="TestID" SortExpression="TestID" />
                <asp:BoundField DataField="testString" HeaderText="testString" SortExpression="testString" />
            </Columns>
        </asp:GridView>
这段代码中,
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值