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

弃我而去而又重返的人,我会把他忽略。因为他再也给不了我一颗完整的心。将来的一面,我们必须容忍爱人的所有面。

本文实例讲述了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程序设计有所帮助。

到此这篇关于Gridview利用DataFormatString属性设置数据格式的方法就介绍到这了。把花融进心海,有一句是为你心开,把祝福散落人海,有一种是为你归来,把温暖折成花海,有一朵是为你存在。大雪节气到来,好运来。更多相关Gridview利用DataFormatString属性设置数据格式的方法内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
解决Asp.net Mvc返回JsonResult中DateTime类型数据格式问题的方法

服务端拼接json数据格式的正确写法(Append方式)

DataGridView使用BindingNavigator实现简单分页功能

详解GridView自带的编辑删除更新功能

ASP.NET中GridView、DataList、DataGrid三个数据控件foreach遍历用法示例