wpf model的属性如何不写OnPropertyChanged能让界面更新

lishuangquan1987 2018-11-20 06:14:06
例如有一个Model

public class Person
{
public string Name{get;set;}
public int Age{get;set;}
}

然后让这个Person继承一个类,自动实现Name/Age变化时,界面自动更新的效果,而不用强迫Person去实现IProperychanged接口
...全文
556 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lindexi_gd 2018-12-05
  • 打赏
  • 举报
回复
我觉得你需要代码片 我在 VisualStudio 输入 ps 就可以输入带通知属性
lishuangquan1987 2018-12-04
  • 打赏
  • 举报
回复
引用 1 楼 以专业开发人员为伍 的回复:
你啥也不声明让 .net 自己去猜呗。总有一天能猜出来你的代码要还是不要抛出事件。

不是,请看一篇文章:https://blog.csdn.net/lishuangquan1987/article/details/84312514
我想实现一个更简单的,就比如让Person去继承一个类,这个类里做什么我不管,我只在Person类里写两个属性,能达到我更改Person类的属性的时候触发事件或者引发OnPropertyChanged事件,再者,请看ReactiveUI里的写法,就是达到不用每次去写属性的字符串,越简单越好的目的:

public class Person:ReactiveObject
{
private string _name;
private int _age;
public string Name
{
get => _name;
set => this.RaiseAndSetIfChanged(ref _name, value);
}

public int Age
{
get => _age;
set => this.RaiseAndSetIfChanged(ref _age, value);
}
}
exception92 2018-11-21
  • 打赏
  • 举报
回复
引用 5 楼 porenasckx 的回复:
[quote=引用 3 楼 duanzi_peng 的回复:]
把普通的。net属性声明成依赖项属性即可。


依赖属性也是本身实现了INotifyPropertyChanged接口的[/quote]
是的,但是楼主的意思是不”强迫“
E次奥 2018-11-21
  • 打赏
  • 举报
回复
引用 3 楼 duanzi_peng 的回复:
把普通的。net属性声明成依赖项属性即可。
依赖属性也是本身实现了INotifyPropertyChanged接口的
大然然 2018-11-21
  • 打赏
  • 举报
回复


nuget搜索这个,然后安装,然后你就不用写那些代码了。
exception92 2018-11-21
  • 打赏
  • 举报
回复
把普通的。net属性声明成依赖项属性即可。
E次奥 2018-11-20
  • 打赏
  • 举报
回复
洗洗碎吧!骚年! 这是WPF更新必须要实现的接口,不实现没法更新
  • 打赏
  • 举报
回复
你啥也不声明让 .net 自己去猜呗。总有一天能猜出来你的代码要还是不要抛出事件。

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧