0

データ テーブルとグリッド ビューを使用してチェック ボックスを動的に追加しました。ただし、すべてのチェック ボックスが無効になっています。有効にする方法は?

これは私のコードです

    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>

チェックボックスのプロパティを設定する方法がわかりません。私を助けてください..

4

3 に答える 3

0

グリッド内のチェック ボックスを見つけ、チェック ボックスが見つかったら、.Enabled プロパティを使用して false を有効にします。

于 2013-08-30T06:32:03.410 に答える
0

これ?

 Page.FindControl("yourCheckBoxId").Enabled=true;    
于 2013-08-30T06:32:33.027 に答える
0

「動的」とはどういう意味ですか-GridViewのマークアップのチェックボックスですか、それともコードビハインドの別の場所に作成しますか。

マークアップで Eval を使用できます。

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

それ以外の場合は使用

gridUserAccess.FindControl()
于 2013-08-30T06:34:13.997 に答える