我正在研究一些现有的Windows窗体的数据绑定,并且我遇到了一个问题,想出了在一个组框内数据绑定一组radiobutton控件的正确方法.
我的业务对象有一个整数属性,我想对4个radiobuttons进行数据绑定(其中每个都代表值0 - 3).
我目前正在绑定一个presenter对象,它作为表单和业务对象之间的绑定器,我现在的方式是拥有4个独立的属性,每个属性都绑定这些值(我使用INotifyPropertyChanged) ,但不包括这里):
Private int _propValue;
Public bool PropIsValue0
{
get { return _propValue == 0; }
set
{
if (value)
_propValue = 0;
}
}
Public bool PropIsValue1 { // As above, but with value == 1 }
Public bool PropIsValue2 { // As above, but with value == 2 }
Public bool PropIsValue3 { // As above, but with value == 3 }
Run Code Online (Sandbox Code Playgroud)
然后我将每个单选按钮绑定到它们各自的属性,如上所述.
这对我来说似乎不对,所以任何建议都受到高度赞赏.
可能重复:
使用ApplicationSettings存储WinForms RadioButtons的Checked属性
我在组合框中有三个radiobuttons.当它们不受应用程序设置的约束时,它们的行为正常.
将每个已检查的属性绑定到应用程序设置后,会发生以下情况:我必须单击未经检查的radiobutton两次才能检查它.第一次单击后,所有三个都未选中.
我也试过只绑定其中两个,但行为是一样的.
任何人都可以帮忙吗?
谢谢.