ASP.NET 2.0中Gridview利用DataFormatString属性设置数据格式

ASP.NET 2.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小写表示的时间里的分钟。

..................................................................................................................................................................................................................

有个时间要在gridview中显示,但是保持着数据库中的是标准时间,很长,而且只需要显示日期,就想要格式化字符串,可是设置了DataFormatString就是不起作用,后来一查,原来要设置"行为"中HtmlEncode = false

 

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

在DataFormatString 中的 {0} 表示数据本身,而在冒号后面的格式字符串代表所们希望数据显示的格式;

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

格式字符串 输入 结果
"{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 精简日期格式 MM/dd/yyyy
D 详细日期格式 dddd, MMMM dd, yyyy
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}


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/qing0991/archive/2008/09/20/2955501.aspx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值