WPF MVVM框架中的INotifyPropertyChanged

发布网友 发布时间:2024-10-23 23:14

我来回答

1个回答

热心网友 时间:2024-10-23 23:29

INotifyPropertyChanged 接口用于通知视图或 ViewModel 任何属性的更改。以一个 WPF 窗口为例,包含三个字段:名字、姓氏和全名。名字和姓氏是可编辑的文本框,因此全名需要根据名字和姓氏的变化进行更新。

创建 WPF 窗口设计图。窗口的 XAML 代码如下:

实现模型类,包含“FirstName”,“LastName”,“FullName”三个属性。在“Person”类上实现 INotifyPropertyChanged 接口,从而自动创建一个事件。

当类的属性发生改变时,调用事件。创建一个调用事件的方法,并在属性的“Set”部分调用此方法,通过传递属性名来运行事件。例如:

在模型类中,如果名字或姓氏发生变化,通过调用两者的“FullName”属性进行更改。完整 Person 类如下:

将属性绑定到视图。构建解决方案,将模型名称空间添加到视图中。将模型添加到窗口资源文件中,为网格设置数据上下文。为三个文本框绑定Text属性,例如:

XAML 文件的完整代码如下:

运行应用程序,更改名字和姓氏文本框的内容。全名将自动更新,显示按照名字和姓氏的变化。

推荐使用开源项目 Newbeecoder.UI 作为 WPF MVVM 框架。下载示例代码进行学习与实践。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com