[英]Access linkbutton from datalist on pageload with c# asp.net
我在數據列表中有此鏈接按鈕,並且我試圖訪問頁面加載上的數據列表,因此我可以根據用戶角色將鏈接按鈕設置為啟用還是不啟用。
<asp:DataList id="dlRecommendations" runat="server" DataKeyField="Key" Width="900">
<ItemTemplate>
<asp:LinkButton id="lnkEdit" Text="Edit" Runat="server" CommandName="Edit">
</asp:LinkButton>
</ItemTemplate>
</asp:DataList>
在頁面加載中,我希望能夠訪問鏈接按鈕以根據用戶角色啟用或禁用它。
private void Page_Load(object sender, System.EventArgs e) {
//perhaps something like this:
lnkEdit.Enabled = false;
....
}
我認為您將在第一次加載頁面時填充數據列表。 因此,只需將ItemDataBound連接起來,找到鏈接並將其禁用。
void dlRecommendations_ItemDataBound(object sender, DataListItemEventArgs e)
{
var link = e.Item.FindControl("lnkEdit") as LinkButton;
if (link != null)
{
link.Enabled = UserHasRight;//if user has right then enabled else disabled
}
}
DataList是一個數據綁定控件-僅在提供數據時才構建行。 要訪問行內的鏈接,請使用ItemDataBound事件並訪問e.Item.FindControl(“ linkId”);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.