【发布时间】:2012-06-25 16:39:40
【问题描述】:
我在模板字段中有一个超链接。我想根据其值启用和禁用超链接。假设Id 是"ABC" 我想禁用超链接。我尝试了下面的代码,但它对我不起作用。
Enabled='<%# Convert.ToString(Eval("Id"))!= "ABC" ? true: false %>'
我在后面的代码中尝试了以下内容:
protected void gridResult_RowDataBound(object sender, GridViewRowEventArgs e) {
if (e.Row.RowType == DataControlRowType.DataRow)
{
HyperLink status = (HyperLink)e.Row.Cells[2].Controls[0];
if (status != null && status.Text == "ABC") {
status.Enabled = false;
}
}
}
但它每次都返回null。
<asp:TemplateField HeaderText="Id">
<ItemTemplate>
<% if ( WebApp.Common.Auth.Admin() ) { %>
<a href="../../Edit/Default.aspx?<%= WebApp.Edit.Default.P_ID %>=<%# DataBinder.Eval(Container.DataItem, "Id") %>&r=<%= buildPostBackPortion() %>"><%# DataBinder.Eval(Container.DataItem, "Id") %> Enabled='<%# Convert.ToString(Eval("Id"))!= "ABC" ? true: false %>'
</a>
<% } else { %>
<%# DataBinder.Eval(Container.DataItem, "Id") %>
<% } %>
</ItemTemplate>
</asp:TemplateField>
【问题讨论】:
-
请显示您的完整模板字段...
-
Naveen,我用 templatefiled 更新了我的问题。请看一看。
标签: c# asp.net gridview itemtemplate templatefield