想把一个数据表中的性别字段 1-男 0-女 显示在GridView中,就下面一句
<asp:HyperLinkField HeaderText="性别" text='<%#DataBinder.Eval(Container.DataItem, "xb").ToString()== "1 "? "男 ":"女" %>' DatatextField="xb" DataNavigateUrlFields="xb" />
这里出错?望高手回答
错误如下:
说明: 在分析向此请求提供服务所需资源时出错。请检查下列特定分析错误详细信息并适当地修改源文件。 分析器错误信息: 仅对具有 DataBinding 事件的对象提供数据绑定表达式支持。System.Web.UI.WebControls.HyperLinkField 没有 DataBinding 事件。
<asp:HyperLinkField HeaderText="性别" text='<%#DataBinder.Eval(Container.DataItem, "xb").ToString()== "1 "? "男 ":"女" %>' DatatextField="xb" DataNavigateUrlFields="xb" />
这里出错?望高手回答
错误如下:
说明: 在分析向此请求提供服务所需资源时出错。请检查下列特定分析错误详细信息并适当地修改源文件。 分析器错误信息: 仅对具有 DataBinding 事件的对象提供数据绑定表达式支持。System.Web.UI.WebControls.HyperLinkField 没有 DataBinding 事件。
public string DBXB(string xb)
{
if(xb == "1")
return "男";
else
return "女";
}然后用<%# DBXB(DataBinder.Eval(Container.DataItem,"xb").ToString())%>来绑定,
这样就可以了。
<asp:HyperLinkField HeaderText="性别" text='<%#Bind("SexFlag")%>' DatatextField="xb" DataNavigateUrlFields="xb" /> 在绑定的数据源中将0,1转为文字列“男,女” 在客户端直接绑定text='<%#Bind("SexFlag")%>'