【问题标题】:Check multiple items in ASP.NET CheckboxList检查 ASP.NET CheckboxList 中的多个项目
【发布时间】:2011-10-02 05:01:12
【问题描述】:

我尝试检查 ASP.NET CheckboxList 中的多个值,但我不能。
我写了:

chkApplications.SelectedValue = 2;
chkApplications.SelectedValue = 6;

但它只选择值为“6”的项目
怎么了?

【问题讨论】:

    标签: c# asp.net checkboxlist


    【解决方案1】:

    最适合您的技术如下:

    chkApplications.Items.FindByValue("2").Selected = true;
    chkApplications.Items.FindByValue("6").Selected = true;
    

    或者你可以简单地这样做......

      foreach (ListItem item in chkApplications.Items)
        {
            if (item.Value == "2" || item.Value == "6")
            {
                item.Selected = true;
            }
        }
    

    【讨论】:

    • 如果找不到值会抛出异常。每次调用 FindByValue 时,还需要迭代整个集合一次。
    【解决方案2】:
    foreach (var item in cb.Items.Cast<ListItem>()
            .Where (li => li.Value == "2" || li.Value == "6"))
       item.Selected = true;
    

    【讨论】:

      【解决方案3】:

      您可以将值放入列表 (MyList),并使用 FindByValue 进行检查。

      foreach (var item in MyList)
      {
          checkBoxList.Items.FindByValue(item.id).Selected = true;
      }
      

      【讨论】:

        【解决方案4】:

        与其尝试通过chkApplications.SelectedValue选择项目,不如尝试 chkApplications.Items.Item(2).Selected = True chkApplications.Items.Item(6).Selected = True

        【讨论】:

          猜你喜欢
          • 2011-06-05
          • 1970-01-01
          • 1970-01-01
          • 2018-08-01
          • 1970-01-01
          • 2023-03-24
          • 2013-05-26
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多