簡體   English   中英

使用C#ASP.NET從頁面加載的數據列表訪問鏈接按鈕

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM