Gridview利用DataFormatString属性设置数据格式的方法

所属分类: 网络编程 / ASP.NET 阅读数: 445
收藏 0 赞 0 分享

本文实例讲述了Gridview利用DataFormatString属性设置数据格式的方法。分享给大家供大家参考,具体如下:

首先把Gridview的AutoGenerateColumns属性设为False(默认是False),DataField选择相应的字段,特别需要注意的是要把需要设置的字段的HtmlEncode属性设置为False,否则所设置的格式将无法显示,然后就可以设置每个字段的 DataFormatString属性来输出不同的格式了。

DataFormatString 属性语法如下: {A:B}

如:DataFormatString="{0:格式字符串}"

冒号前的值(常规示例中为 A)指定在从零开始的参数列表中的参数索引。此值只能设置为 0,因为每个单元格中只有一个值。

冒号后的字符(常规示例中为 B)指定值的显示格式。另外在指定的格式符号后可以指定小数所要显示的位数。例如原来的数据为「1.56」,若格式设定为 {0:N1},则输出为「1.5」。其常用的数值格式如下表所示:

格式字符        说明

C  以货币格式显示数值。

D  以十进制格式显示数值。

E  以科学记数法(指数)格式显示数值。

F  以固定格式显示数值。

G  以常规格式显示数值。

N   以数字格式显示数值。

X  以十六进制格式显示数值。

下面是一些示例,供大家参考:

格式字符串         输入         结果
"{0:C}"         12345.6789    $12,345.68
"{0:C}"         -12345.6789   ($12,345.68)
"{0:D}"         12345         12345
"{0:D8}"        12345         00012345
"{0:E}"         12345.6789    1234568E+004
"{0:E10}"       12345.6789    1.2345678900E+004
"{0:F}"         12345.6789    12345.68
"{0:F0}"        12345.6789    12346
"{0:G}"         12345.6789    12345.6789
"{0:G7}"        123456789     1.234568E8
"{0:N}"         12345.6789    12,345.68
"{0:N4}"        123456789     123,456,789.0000
"Total: {0:C}"  12345.6789    Total: $12345.68

其常用的日期格式如下表所示:

格式    说明               输出格式
d    精简日期格式       yyyy-MM-dd
D    详细日期格式       yyyy年MM月dd日
f    完整格式          (long date + short time) dddd, MMMM dd, yyyy HH:mm
F   完整日期时间格式 (long date + long time) dddd, MMMM dd, yyyy HH:mm:ss
g    一般格式          (short date + short time) MM/dd/yyyy HH:mm
G    一般格式          (short date + long time) MM/dd/yyyy HH:mm:ss
m,M  月日格式          MMMM dd
s    适中日期时间格式  yyyy-MM-dd HH:mm:ss
t    精简时间格式      HH:mm
T    详细时间格式      HH:mm:ss

最后,介绍另外一种设置的方法,就是直接写入时间格式,如{0:yyyy-MM-dd}将显示与{0:d}相同的格式,要注意的是MM必须是大写,因为MM大写表示的是月份,而mm小写表示的时间里的分钟。

用DataFormatString格式化GridView

在GridView里面显示数据,要显示的数据有好多位小数,就想让它只显示两位小数,在delphi里,直接用DisplayFormat就行了,在.net中,查了半天msdn,发现使用DataFormatString是可以实现这个功能的,但是怎么设置就不起作用,最后发现,由于2.0出于安全性的考虑,还要同时设置HtmlEncode = false,才能够使DataFormatString生效.

留个记号,下次用的时候,就不用浪费N多时间了.

还有还有,DataFormatString = "{0:F}",是默认格式,显示两位小数,如果需要显示的小数位数为其他值,DataFormatString = "{0:Fn}"即可.

例:

<Columns>
    <asp:BoundField DataField="EmployeeId" />
    <asp:BoundField DataField="LastName" />
    <asp:BoundField DataField="BirthDate" HtmlEncode ="false" DataFormatString="{0:yyyy-MM-dd}" />
< /Columns>

希望本文所述对大家asp.net程序设计有所帮助。

更多精彩内容其他人还在看

ASP.Net 之Datalist删除功能详解附代码

ASP.Net 之Datalist删除功能详解附代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

ASP.NET(C#)验证数字的两种方法

ASP.NET(C#)验证数字的两种方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

此页的状态信息无效,可能已损坏 的处理办法及原因分析

此页的状态信息无效,可能已损坏 的处理办法及原因分析,需要的朋友可以参考一下
收藏 0 赞 0 分享

MultiLine 换行后实现读取不换行的具体思路

输入内容中有换行,保存到数据库,直接查看感觉没有换行,但查询结果“以文本格式显示结果”你就会发现 其实是有换行的,下面与大家分享下具体的解决方法
收藏 0 赞 0 分享

swfupload ajax无刷新上传图片实例代码

在这里上传图片就需要用到ajax无刷新上传图片,这里面包含的东西不是一点半点。这里用到的是一个插件swfupload实现无刷新上传图片,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

静态gb2312编码在项目传值出现中文乱码现象

参考的美工静态页面是gb2312格式的,当此编码拿到项目中后,utf-8编码的系统,加载页面时,会出现样式问题,比如不能正常居中等
收藏 0 赞 0 分享

System.Timers.Timer定时执行程序示例代码

如果是某个逻辑功能的定时,可以将code放到逻辑功能的类的静态构造函数中,在该逻辑类第一次执行时,静态构造函数会被调用,则定时自然启动
收藏 0 赞 0 分享

分享下Asp.Net面试题目及答案集合

这篇文章主要是总结asp.net开发人员在面试过程中常遇到的一些问题小结,需要的朋友可以参考下
收藏 0 赞 0 分享

给自定义Web控件添加事件(前后台代码)

给自定义控件(Web Control)添加事件具体前后台代码如下,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

ASP.NET过滤器的应用方法介绍

ASP.NET过滤器的应用方法介绍,需要的朋友可以参考一下
收藏 0 赞 0 分享
查看更多