おそらく多くの友人がこれまでに試したことがあると思いますが、私は今日この問題に遭遇し、情報を確認した後に解決しました。主にasp.net 2.0で、バインディング列に日付形式などを表示したい場合、以下の方法を使うと表示されなくなります
<asp :BoundField DataField="作成日"
DataFormatString="{0:M-dd-yyyy}"
HeaderText="CreationDate" />
主な理由は、htmlencode 属性がデフォルトで true に設定されており、XSS 攻撃を防止し、セキュリティ上の理由から使用されます。したがって、これを解決するには 2 つの方法があります。
1.
<asp :GridView ID="GridView1″ runat="server">
<列>
<asp :BoundField DataField="作成日"
DataFormatString="{0:M-dd-yyyy}"
HtmlEncode="false"
HeaderText="作成日" />
</列>
</asp>
htmlencode を false に設定する
別の解決策は、テンプレート列を使用することです。
<asp :GridView ID="GridView3″ runat="server">
<列>
<asp :TemplateField HeaderText="作成日">
<edititemtemplate>
<asp :Label ID="ラベル1" runat="サーバー"
Text='<%# Eval("CreationDate", "{0:M-dd-yyyy}") %>'>
</asp>
</edititemtemplate>
<アイテムテンプレート>
<asp :Label ID="ラベル1" runat="サーバー"
Text='<%# Bind(“CreationDate”, “{0:M-dd-yyyy}”) %>'>
</asp>
</itemtemplate>
</asp>
</列>
</asp>
http://www.cnblogs.com/jackyrong/archive/2006/08/28/488282.html