我有一個資料表格。其中一個欄位是UName。UName有超鏈接。我想在某些行中禁用它。
我在ItemTemplate中有兩個LnkButtons。 當我洗掉ItemTemplate中的第一個LnkButton時,UName欄位的超鏈接也被洗掉。 由于我不想為每一行都禁用它,我想從CodeBehind中獲得禁用超鏈接的方法。
<telerik:GridTemplateColumn DataField="UName"/span> GroupByExpression="UName"/span> UniqueName="UName"/span>
InitializeTemplatesFirst="false" HeaderText="Name" CurrentFilterFunction=" Contains">
<HeaderStyle />
<HeaderTemplate>
<span onm ouseover='ShowColumnHeaderMenu(event, "UName")'> Name
</span>
<asp:Image ID="imgHeader1" ImageUrl="" Visible="false" runat="server"/>
</HeaderTemplate>
<ItemTemplate>
<LnkButton:LnkButton ID="HypUName" runat="server" style="white-space: nowrap" Text='<%# Server。 HtmlEncode(Eval("UName").ToString()) %>'> </LnkButton:LnkButton>
<LnkButton:LnkButton ID="LnkButton1" runat="server" Text='<%# Eval("UName") 。 ToString() %>' Menuid="5"></LnkButton:LnkButton>
</ItemTemplate>
</telerik:GridTemplateColumn>
總之,我的目標是在CodeBehind中禁用ID為 "HypUName "的LnkButton。
uj5u.com熱心網友回復:
你需要回圈找到該控制元件并禁用它,如果它通過了你所尋找的任何條件。 下面的例子
protected void OnRowDataBound(object sender, GridViewRowEventArgs e)。
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//在這里尋找你的控制元件,并在需要時禁用它。
LinkButton lnk= (LinkButton)e.Row.FindControl("HypUName") 。
if(lnk != null)
{
//在這里進行條件檢查。
//if pass disable link
lnk.Enabled = false。
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/306981.html
標籤:
