在BoundField中使用DataFormatString的ASP.NET GridView问题

时间:2010-06-16 20:48:19

标签: asp.net

我在GridView中有一个BoundField,其数据类型(在MSSQL中)是时间(7)。格式显示为:

HH:MM:ss.xxxxxx

我想将DataFormatString添加到此boundfield,以便该字段以以下格式显示:

HH:MM:SS

以下是我正在修改的.aspx文件的片段:

<asp:BoundField DataField="ProcTime" HeaderText="ProcTime"

SortExpression="ProcTime" ApplyFormatInEditMode="true" HtmlEncode="true" DataFormatString="{0:F0}" />

我尝试过很多不同的格式字符串(t,T,d,D,m等),但它不会改变boundfield的格式。

我错过了什么?

2 个答案:

答案 0 :(得分:1)

我弄明白了(链接here给出了一个更深入的例子)。

简而言之,我需要向GridView添加一个事件处理程序,当“OnRowDataBound”事件发生时会触发该事件处理程序。然后,此事件处理程序将负责更改单元格中文本的格式。

答案 1 :(得分:0)

因为您只格式化单个值而不是一组值,因此您无需指定要使用的值。因此格式“{0:F0}”变为“{F0}”