对整组复选框实施右键单击?

时间:2016-04-19 13:30:38

标签: .net vb.net checkbox

我在CheckBox中有一系列GroupBox个选项,用于选择用户想要投放的报告。它们通常都是Checked,这是最常见的情况,但想要只运行一个也很常见。我想用右键单击一个框将其打开,其他所有其他功能都将有用。

在复选框上实现MouseClick事件很容易,但问题是它们中有很多,并且列表会不断添加。所以第一个问题:有没有办法让一个MouseClick处理程序适用于任何复选框,即使我们还没有?

另一种选择似乎是使用GroupBox.Controls集合循环复选框并查看单击了哪一个,然后根据需要为所有复选框设置Checked。但是,即使关闭了CheckBox,似乎MouseClick 总是拦截AutoCheck事件。所以我的第二个问题:有没有办法在复选框中关闭点击处理,以便该组可以处理事件?

如果还有其他办法可以处理,请告诉我!

1 个答案:

答案 0 :(得分:1)

以下是我在评论中谈论的一个例子。将FlowLayoutPanel添加到表单(将其保留为flowlayoutpanel1)

for (auto const &row: list) {
    for (auto const &val: row) {
        cout << val << " ";
    }
    cout << "\n";
}