web-dev-qa-db-ja.com

C#を使用して、ワンクリックでチェックボックスリストのすべてのチェックボックスをオンにします

一度クリックすると、チェックリストボックス内のすべてのチェックボックスが選択されるボタンが必要です。考えられる答えを検索しましたが、asp.netとjavascriptの例が常に表示されます。 C#でWindowsフォームを使用しています。ご回答ありがとうございます。

22
Brenelyn
for (int i = 0; i < checkedListBox1.Items.Count; i++)
{
    checkedListBox1.SetItemChecked(i, true);
}
50
SekaiCode

C#のコードビハインドからメソッドを呼び出し、このコードを記述すると、それらをチェック/チェック解除できます。これにより、チェックボックスリストにあるすべてのチェックボックスがオンまたはオフになります。それが役立つことを願っています。

foreach (ListItem item in CheckBoxList.Items)
{
    item.Selected = true;    
}
4

これを試して...

    protected void chk_CheckedChanged(object sender, EventArgs e)
    {
        CheckBox[] boxes = new CheckBox[7];
        boxes[0] = this.CheckBoxID;
        boxes[1] = this.CheckBoxID;
        boxes[2] = this.CheckBoxID;
        boxes[3] = this.CheckBoxID;
        boxes[4] = this.CheckBoxID;
        boxes[5] = this.CheckBoxID;
        boxes[6] = this.CheckBoxID; //you can add checkboxes as you want

        CheckBox chkBox = (CheckBox)sender;
        string chkID = chkBox.ID;
        bool allChecked = true;

        if (chkBox.Checked == false)
            allChecked = false;

        foreach (CheckBox chkBoxes in boxes)
        {
            if (chkBox.Checked == true)
            {
                if (chkBoxes.Checked == false)
                    allChecked = false;
            }
        }
        this.CheckBoxIDALL.Checked = allChecked; //Here place the main CheckBox
    }
2
DavidRomo

これを試して:

 foreach(Control c in this.Controls) {
    if (c.GetType() == typeof(CheckBox)) {
       ((CheckBox)c).Checked = true;
    }
 }
0
patrick choi