镜像Radiobutton在另一个选项卡上

时间:2018-04-05 08:44:00

标签: c# winforms radio-button

在winform申请中 在TabControl"相机"我有2个radiobuttons用于选择哪种相机方法激活 在另一个标签" Callibration"我想再次拥​​有这些选项。 它们应该永远都是一样的。

问题是

在标签的TabLoad上我可以检查"相机"检查。但是一旦我尝试检查校准选项卡上的类似复选框,我就会触发选择事件

如何在两个标签上镜像2个单选按钮?

2 个答案:

答案 0 :(得分:2)

您可以在两个

之间使用常规数据绑定
radioButton1.DataBindings.Add("Checked", radioButton2, "Checked", false, DataSourceUpdateMode.OnPropertyChanged);

MSDN

答案 1 :(得分:0)

如上所述,在设置其检查值之前,手动绑定并取消绑定第二个单选按钮中已更改的事件。

以下本地适合我。

在选项卡控件更改事件中,获取所选选项卡并相应取消绑定。

private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
      var selectedTab = ((TabControl)sender).SelectedTab.Name;

      if (selectedTab == "Callibration")
      {
           rdCallibrationCameraMethod.CheckedChanged -= rdCallibrationCameraMethod_CheckedChanged;
           rdCallibrationCameraMethod.Checked = rdCameraMethod.Checked;
         }
      }

如果需要,您可以重新绑定已更改的事件。

rdCallibrationCameraMethod.CheckedChanged += rdCallibrationCameraMethod_CheckedChanged;

希望有所帮助