C# Winforms绑定导致未选中任何单选按钮
背景 在这个winforms应用程序中,我试图将两个单选按钮绑定到模型类的属性 代码 模型上的相关属性:C# Winforms绑定导致未选中任何单选按钮,c#,winforms,C#,Winforms,背景 在这个winforms应用程序中,我试图将两个单选按钮绑定到模型类的属性 代码 模型上的相关属性: private bool _bTotalRowsLinear; private bool _bTotalRowsLog; public bool bTotalRowsLinear { get { return _bTotalRowsLinear; } set { _bTotalRowsLinear = value; } } public b
private bool _bTotalRowsLinear;
private bool _bTotalRowsLog;
public bool bTotalRowsLinear
{
get { return _bTotalRowsLinear; }
set { _bTotalRowsLinear = value; }
}
public bool bTotalRowsLog
{
get { return _bTotalRowsLog; }
set { _bTotalRowsLog = value; }
}
创建绑定的代码:
rdbTotalRowsLinear.DataBindings.Add("Checked",
objModel,
"bTotalRowsLinear",
false,
DataSourceUpdateMode.OnPropertyChanged);
rdbTotalRowsLog.DataBindings.Add("Checked",
objModel,
"bTotalRowsLog",
false,
DataSourceUpdateMode.OnPropertyChanged);
问题
初始绑定工作正常。但是,当我尝试选择非选中的单选选项时,我首先会导致两个单选按钮都未选中,从而迫使用户单击所需的选项两次
初始状态:
单击一次后(错误状态):
Github上提供的完整代码:在您的模型中,设置相反的选项,例如
set {
_bTotalRowsLinear = value;
_bTotalRowsLog = !bTotalRowsLinear;
}
...
set {
_bTotalRowsLog = value;
_bTotalRowsLinear = !bTotalRowsLog;
}
这很好,但你为什么要这么做呢?如果一个组中有两个以上的单选按钮,它也会崩溃。。。对于一个更深层次的问题来说,这似乎是一个笨拙的工作。