我有一个winforms app,其中有一个tabcontrol
,并且在每个标签中有一些radiobuttons
代码可以运行,但是有问题。
如果我转到选项卡并检查radiobutton
,然后转到另一个标签并检查另一个radiobutton
,则前一个按钮保持选中状态。
有没有办法每当我检查另一个选项卡上的单选按钮时,应用程序取消选中另一个选项卡上的上一个按钮?
我使用的代码是:
if (!radioButton1.Checked && !radioButton2.Checked && !radioButton3.Checked && !radioButton4.Checked)
{
MessageBox.Show("Please select an option!", "Warning");
return;
}
else if (radioButton1.Checked)
{
build build = new build("@../Images/x1.jpg", "definition", "c1");
build.ShowDialog();
}
else if (radioButton2.Checked)
{
build build = new build("@../Images/x2.jpg", "definition2","c2");
build.ShowDialog();
}
等...
提前致谢,
答案 0 :(得分:0)
如果我理解你的问题,你只想取消选中所有其他的radiobuttons?你可以用来取消选中它们:
radioButtonX.Checked = False;
答案 1 :(得分:0)
查看tabControl的事件。为tabPageX.Enter创建一个事件并清除其中的单选按钮(radioButtonX.Checked = false)。
真的,除非这是一个丢弃测试软件,否则我建议您研究一下像Model View Presenter这样的更复杂的架构。 (为了它的价值)。