asp.net|技巧
可能之前不少朋友也已經試過,但我是今天才遇到這個問題,翻查資料後才解決。主要是在asp.net 2.0中,如果要在繫結資料行中顯示比如日期格式等,如果用下面的方法是顯示不了的
<asp :BoundField DataField=“CreationDate”
DataFormatString=“{0:M-dd-yyyy}”
HeaderText=“CreationDate” />
主要是由於htmlencode屬性預設設定為true,已防止XSS攻擊,安全起見而用的,所以,可以有以下兩種方法解決
1、
<asp :GridView ID=“GridView1″ runat=“server”>
<columns>
<asp :BoundField DataField=“CreationDate”
DataFormatString=“{0:M-dd-yyyy}”
HtmlEncode=“false”
HeaderText=“CreationDate” />
</columns>
</asp>
將htmlencode設定為false即可
另外的解決方案為,使用模版列
<asp :GridView ID=“GridView3″ runat=“server” >
<columns>
<asp :TemplateField HeaderText=“CreationDate” >
<edititemtemplate>
<asp :Label ID=“Label1″ runat=“server”
Text=‘<%# Eval("CreationDate", "{0:M-dd-yyyy}") %>‘>
</asp>
</edititemtemplate>
<itemtemplate>
<asp :Label ID="Label1" runat="server"
Text=’<%# Bind(“CreationDate”, “{0:M-dd-yyyy}”) %>‘>
</asp>
</itemtemplate>
</asp>
</columns>
</asp>