1/1页1 跳转到查看:646
发新话题 回复该主题

小tips:asp.net 2.0中在gridview中使用DataFromatString(原作者:樊献华)

小tips:asp.net 2.0中在gridview中使用DataFromatString(原作者:樊献华)

可能之前不少朋友也已经试过,但我是今天才遇到这个问题,翻查资料后才解决。主要是
在asp.net 2.0中,如果要在绑定列中显示比如日期格式等,如果用下面的方法是显示不了的

<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><asp :BoundField DataField=“CreationDate”
        DataFormatString=
{0:M-dd-yyyy}” 
    HeaderText
=“CreationDate”  />
</DIV>
主要是由于htmlencode属性默认设置为true,已防止XSS攻击,安全起见而用的,所以,可以有以下两种方法解决
1、
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><asp :GridView ID=“GridView1″ runat=“server”>
<columns>
 
<asp :BoundField DataField=“CreationDate”

        DataFormatString=
{0:M-dd-yyyy}” 
    HtmlEncode
=false
    HeaderText
=“CreationDate”    />
</columns>
</asp>
</DIV>将htmlencode设置为false即可

另外的解决方法为,使用模版列
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><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>
</DIV>
最后编辑yuxiao 最后编辑于 2008-04-08 19:12:39

TOP

 
1/1页1 跳转到
发表新主题 回复该主题