如何动态设置复选框禁用属性

本文关键字:复选框 属性 设置 何动态 动态 | 更新日期: 2023-09-27 18:29:32

我使用数据表和网格视图动态添加了复选框。但所有复选框都是禁用的。如何启用它?

这是我的代码

    DataTable dt = new DataTable("UserAcess");         
    DataColumn dc1 = new DataColumn("PageName");
    dt.Columns.Add(dc1);

    foreach (var item in RoleName)
    {
        DataColumn dc = new DataColumn(item.RoleName, typeof(bool)); 
        dt.Columns.Add(dc);
    }

    foreach (var page in pageName)
    {
        DataRow dr = dt.NewRow();
        dr["PageName"] = page.PAGE_NAME;
         foreach (var role in RoleName)
        {                  
           dr[role.RoleName] = false; 
        }
        dt.Rows.Add(dr);
    }
    gridUserAcess.DataSource = dt;
    gridUserAcess.DataBind();

这是我的网格视图。

  <asp:GridView ID="gridUserAcess" runat="server">

    </asp:GridView>

我不知道如何设置复选框属性。请帮帮我。

如何动态设置复选框禁用属性

找到网格内的复选框,然后在找到复选框时使用.Enabled属性启用false。

这个?

 Page.FindControl("yourCheckBoxId").Enabled=true;    

"动态"对您来说意味着什么-是GridView标记中的复选框,还是在代码后面的其他地方创建它们。

您可以在Markup中使用Eval:

<asp:CheckBox ID="deactivated" runat="server" checked="<%#Eval(Container.DataItem, 'Deactivated')%>"></asp:CheckBox>

否则使用

gridUserAccess.FindControl()