繁体   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