【问题标题】:How to create dynamic checkbox in asp.net如何在asp.net中创建动态复选框
【发布时间】:2021-09-23 03:39:56
【问题描述】:

我正在创建一个需要添加动态复选框列表的应用程序。请任何人告诉我如何使用 C# 添加动态复选框列表。

【问题讨论】:

  • 你尝试过什么,你在哪里卡住了? WinForms 应用程序、WPF 或 ASP.NET ?
  • 当您指的是动态时,您是指在代码中还是在程序中?
  • @Matten,我认为这是标题所说的 ASP.NET。
  • 可能重复的帖子。 stackoverflow.com/questions/626889/…
  • @Jethro -- 我应该提高我的阅读能力:)

标签: c# asp.net


【解决方案1】:

在您的表单上放置一个 ID 为 placeHolder 的占位符,并将以下代码添加到您的 Page_Load()

CheckBoxList cbList = new CheckBoxList();
    
for (int i = 0; i < 10; i++)
    cbList.Items.Add(new ListItem("Checkbox " + i.ToString(), i.ToString()));

placeHolder.Controls.Add(cbList);

这将在您的CheckBoxList(cbList) 中添加 10 个 CheckBox 对象。

使用以下代码检查CheckBoxList 中的每个CheckBox 对象

foreach(ListItem li in cbList.Items)
{
    var value = li.Value;
    var text = li.Text;
    bool isChecked = li.Selected;
}

占位符用于在运行时将CheckBoxList 添加到表单中,使用占位符可以让您更好地控制CheckBoxList 及其项目将出现的网页。

【讨论】:

    【解决方案2】:

    这是一个例子

        CheckBoxList chkList = new CheckBoxList();
        CheckBox chk = new CheckBox();
        chkList.ID = "ChkUser";
        chkList.AutoPostBack = true;
        chkList.RepeatColumns = 6;
        chkList.DataSource = us.GetUserDS();
        chkList.DataTextField = "User_Name";
        chkList.DataValueField = "User_Id";                        
        chkList.DataBind();
    
        Panel pUser = new Panel();
    
        if (pUserGrp != "")   
        {
            pUser.GroupingText = pUserGrp ;
            chk.Text = pUserGrp;            
        }
        else 
        {
            pUser.GroupingText = "Non Assigned Group";
            chk.Text = "Non Assigned group";
        }
        pUser.Controls.Add(chk);
        pUser.Controls.Add(chkList);
        this.Form.Controls.Add(pUser);   
    

    【讨论】:

      【解决方案3】:

      您可以在后面的代码中创建新的 ASP.NET 控件,并且可以将这些控件添加到您的页面中。您需要做的就是创建新的CheckBoxList 对象并将ListItems 添加到其中。最后,您需要将 CheckBoxList 添加到您的Page

      // Create CheckBoxList
      CheckBoxList list= new CheckBoxList();
      
      // Set attributes for CheckBoxList
      list.ID = "CheckBoxList1";
      list.AutoPostBack = true;
      
      // Create ListItem
      ListItem listItem = new ListItem();
      
      // Set attributes for ListItem
      listItem .ID = "ListItem1";
      
      // Add ListItem to CheckBoxList
      list.Items.Add(listItem );
      
      // Add your new control to page
      this.Form.Controls.Add(list);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-06-16
        • 1970-01-01
        • 1970-01-01
        • 2016-11-28
        • 1970-01-01
        • 1970-01-01
        • 2013-01-25
        相关资源
        最近更新 更多