微软应该已经实现了一些有趣的东西INotifyPropertyChanged,就像在自动属性中一样,只需指定{get; set; notify;}
我认为这样做很有意义.或者有任何并发症吗?
我们自己可以在我们的属性中实现类似'notify'的内容.是否有一个优雅的解决方案,INotifyPropertyChanged在您的班级实施或唯一的方法是通过提高PropertyChanged每个属性中的事件.
如果没有,我们可以写一些东西来自动生成一段代码来引发PropertyChanged 事件吗?
当我希望将控件绑定到我的对象的属性时,我必须提供属性的名称作为字符串.这不是很好,因为:
是否有一个设计模式可以解决这个问题,但仍然易于使用数据绑定?
(这是WinForm,Asp.net和WPF中的一个问题,很可能是很多其他系统)
我现在已经找到了" C#中的nameof()运算符的变通方法:typesafe databinding ",它也是解决方案的一个很好的起点.
如果您在编译代码后愿意使用后处理器,那么notifypropertyweaver非常值得关注.
当绑定在XML而不是C#中完成时,任何人都知道WPF的良好解决方案吗?
我有一些我想简化的代码.这是代码:
private int id;
public int Id
{
get { return id; }
set
{
id = value;
base.OnPropertyChanged("Id");
}
}
Run Code Online (Sandbox Code Playgroud)
我在考虑使用属性来获取:
[RaiseOnPropertyChanged()]
public int Id { get; set; }
Run Code Online (Sandbox Code Playgroud)
怎么办?或者可以使用属性来完成?