C# Windows窗体显示Radiobutton数据绑定的简单示例
问题是Windows窗体数据绑定 假设这是我的自定义类C# Windows窗体显示Radiobutton数据绑定的简单示例,c#,winforms,data-binding,C#,Winforms,Data Binding,问题是Windows窗体数据绑定 假设这是我的自定义类 public class SimpleClass : INotifyPropertyChanged { public Name {get; set;} char OrderType; ... } 订单类型为p(采购订单),S(销售订单)。我需要发票等 我需要在Windows窗体上显示为一组单选按钮 对于文本框,这是数据绑定语法 Binding nameBinding = new Binding("Text", thi
public class SimpleClass : INotifyPropertyChanged
{
public Name
{get; set;}
char OrderType;
...
}
订单类型为p(采购订单),S(销售订单)。我需要发票等
我需要在Windows窗体上显示为一组单选按钮
对于文本框,这是数据绑定语法
Binding nameBinding = new Binding("Text", this.SimpleObject, "Name", true);
this.nameTextBox.DataBindings.Add(nameBinding);
如何将OrderType数据绑定到包含三个单选按钮的groupbox两个问题:
OrderType
是一个字段RadioButton
s(大多数人都希望这样做),不是本机支持的。唯一可行的方法是创建一个控件,该控件管理一个或多个单选按钮,并提供SelectedValue
(或等效)属性,然后将该值绑定到该属性。有几种第三方解决方案,我可以推荐这些控件
下面是一个使用
enum
(代替char
)支持的属性数据绑定一组单选按钮(作者称之为RadioPanel)的示例:
我还没试过
否则,我的工作就是创建一个带有几个单选按钮的用户控件。关键是在UC上实现
INotifyPropertyChanged
,并使用单选按钮的CheckedChanged
事件来设置与我的UC关联的属性值。Oops我忘了为OrderType设置属性。因此,如果我没有使用第三方控件,那么我从您的解释中得到的是,每当我需要在groupbox中使用单选按钮时,我都需要创建一个UserControl。是这样吗?你不会每次都创建UserControl,但是你可能需要找到一个现有的自定义控件,或者创建你自己的通用版本来支持它。谢谢。我在谷歌搜索的时候偶然发现了那篇文章。我认为不应该有那么大的牵连。如果我不使用数据绑定,我可以简单地检查CheckedChanged上的索引,并适当地更新我的自定义对象。我只是想在数据绑定的问题上绞尽脑汁。在某些圈子里(Alt.Net),数据绑定甚至不是推荐的做法