一个名为CarpetColor这样的形式创建一个属性:
enum Color { Red, Blue, Green }
public Color CarpetColor
{
get { return rbGreen.Checked ? Green : (rbRed.Checked ? Red : Blue); }
set
{
if (value == Green)
rbGreen.Checked = true;
else
if (value == Red)
rbRed.Checked = true;
else
rbBlue.Checked = true;
}
}
,然后你可以将CarpetColor属性只是绑定您的表格,数据源的CarpetColor上。
我会做的形式实现INotifyPropertyChanged Interface 和使用单选按钮活动,提高PropertyChanged事件
protected void OnPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
rbGreen.CheckedChanged += (s, args) => OnPropertyChanged("CarpetColor");
rbRed.CheckedChanged += (s, args) => OnPropertyChanged("CarpetColor");
rbBlue.CheckedChanged += (s, args) => OnPropertyChanged("CarpetColor");
我没有想过使用形式的财产作为绑定过程的一部分。谢谢。 – 2012-07-10 14:42:12
这可以帮助我很多。对于VB.Net,解决方案可以在这里找到:http://stackoverflow.com/questions/16567351/form-property-databinding/16591876#16591876 – Arman 2013-05-16 16:09:22