GridView中日期不显示时分秒的完美解决方法
两种处理方式:
1、模版列:假设数据表的字段completetime的类型为时间格式
<asp:templatefield headertext="时间"> <itemtemplate> <%#eval("completetime", "{0:yyyy-mm-dd}")%> </itemtemplate> </asp:templatefield>
2、绑定列:
<asp:boundfield headertext="时间" datafield="completetime" htmlencode= "false" dataformatstring="{0:yyyy-mm-dd}" > </asp:boundfield>
dataformatstring使用笔记:
存储在数据库里的是日期时间,但在页面中只显示日期,datalist和gridview里面可以用 dataformatstring来进行格式化,使数据按指定的格式显示。
例子:
<asp:datalist id="dlistnews" runat="server" > <itemtemplate> <a title=<%#databinder.eval(container.dataitem,"title")%> target="_blank" href='sysbin/news/news_show.aspx?id=<%#databinder.eval(container.dataitem,"id")%>'> <%#getsubstring(databinder.eval(container.dataitem,"title").tostring(),24)%></a> (<%# databinder.eval(container.dataitem,"showtime")%>) <%# databinder.eval(container.dataitem, "renewtime", "{0:d}")%> 或 <%# databinder.eval(container.dataitem, "renewtime", "{0:yyyy-mm-dd}")%> </span> </itemtemplate> </asp:datalist>
如果用bind()来取值,同样把指定格式的字符串放在后面
<itemtemplate> <asp:label id="label1" runat="server" text='<%# bind("addintime", "{0:yyyy-mm-dd}") %>'></asp:label> </itemtemplate> </asp:templatefield>
控制数字:dataformatstring = "{0:f}",是默认格式,显示两位小数,如果需要显示的小数位数为其他
值,dataformatstring = "{0:fn}"即可.
具体用法:
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
注意:如果用dataformatstring格式化gridview ,
同时设置htmlencode = false,才能够使dataformatstring生效.
<asp:boundfield headertext="总计" datafield="total" dataformatstring="{0:c}" htmlencode="false">
以上这篇gridview中日期不显示时分秒就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。