代码之家  ›  专栏  ›  技术社区  ›  user8931966

Visual C#,如何使用控件设置SetItemChecked属性?

  •  1
  • user8931966  · 技术社区  · 7 年前

    我有一个表单,其中包含几个 CheckedListBox 项目以及其他控件。我试图遍历每个控件并设置其属性值。不幸的是 SetItemChecked 属性在中不可用 Control 类,所以我不知道如何操作 Checked 控件的状态。

    以下是我目前掌握的信息:

    for (int i = 0; i < Controls.Count(); i++) {
      switch(Controls[i].GetType().ToString()) {
        case "System.Windows.Forms.TextBox":
        case "System.Windows.Forms.RichTextBox":
          Controls[i].Text=i.ToString();
            break;
        case "System.Windows.Forms.CheckedListBox":
          Controls[i].SetItemChecked(0,true);
          // ^^ This line doesn't work, because SetItemChecked is not available
          break;
        default:
          Controls[i].Tag=i;
          break;
      }
    }
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   Nahuel Ovejero    7 年前

    您可以将控件强制转换为如下所示的CheckedListBox:

    (Controls[i] as CheckedListBox).SetItemChecked(0,true);
    

    CheckedListBox myCbList= (ChecekdListBox) Controls[i];
    myCbList.SetItemChecked(0,true)