0

在此处输入图像描述我想在 datagridview 中创建 n 个“全选”按钮。datagirdview 有复选框列。如果我按下全选按钮,我可以选择整个选择。如果我再次按下全选按钮,我想释放整个选择。我只能 Select All ,没有 DeSelect All 。请帮我 :(

private void Btn_selectall_Click(object sender, EventArgs e)
    {           

        foreach (DataGridViewRow item in dataGridView1.Rows)
        {
            item.Selected = true;
            item.Cells[0].Value = true;
        }
    }
4

2 回答 2

1

您可以像这样反转值

item.Selected = !item.Selected;
item.Cells[0].Value = !item.Cells[0].Value;
于 2019-12-01T12:28:02.987 回答
0

你可以尝试这样的事情:

private void Btn_selectall_Click(object sender, EventArgs e)
{
    if (dataGridView1.Rows.Cast<DataGridViewRow>().All(r => r.Selected))
    {
        // deselect all
        foreach (DataGridViewRow item in dataGridView1.Rows)
        {
            item.Selected = false;
            item.Cells[0].Value = false;
        }
    }
    else
    {
        // select all
        foreach (DataGridViewRow item in dataGridView1.Rows)
        {
            item.Selected = true;
            item.Cells[0].Value = true;
        }
    }
}
于 2019-12-01T12:30:46.570 回答