ASP.NET 2.0中在gridview中使用DataFromatString的小技巧

來源:互聯網
上載者:User
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>



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.