WPF-MVVM详解

这篇具有很好参考价值的文章主要介绍了WPF-MVVM详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.模式概述

MVVM模式是一种视图UI和业务逻辑分开的程序设计模式,有点类似MVC,但是比MVC又改进了一些。MVVM做的授权就是把其中的view 视图层的状态和行为抽象出来。ViewModel分离视图和业务。可以获取Model的数据,经过业务处理之后展现给View层。还可以实时检测到View层的数据更新,经过业务处理之后修改Model的数据,这是双向数据绑定。三者联系如下:
wpf mvvm,wpf,ui

WPF里的实现是通过Notifications更改UI,给用户发送通知,DataBinding 进行数据绑定,Command命令进行业务处理,流程如下:

 wpf mvvm,wpf,ui

2.实现:

2.1 定义Model

定义需要的数据模型,有点类似java中的pojo层。

namespace WPFDemo.Mvvm {
 public class Person{ 
 public string Name { get; set; }  
  }
}

2.2 创建命令

TestCommand = new DelegateCommand(OnTestCommand);
private void OnTestCommand()
{

TestCommand = new DelegateCommand(OnTestCommand);
private void OnTestCommand()
{   #region 
       //具体实现的代码
        #endregion
    }

OnTestCommand是具体的函数,里面是命令调用之后实现的代码。

2.3 数据实时显示

如果想要数据实时在View上,需要实现INotifyPropertyChanged接口。具体看之前的博客。
MVVM的简介到此就结束了,重点是理解设计模式的思想以及WPF中是怎么样去实现的。
参考:

WPF中的MVVM实现_DevWiki的博客-CSDN博客文章来源地址https://www.toymoban.com/news/detail-578218.html

到了这里,关于WPF-MVVM详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • wpf自定义Mvvm框架

    1.DelegateCommand.cs NotificationObject.cs

    2024年02月16日
    浏览(33)
  • WPF 入门笔记 - 07 - MVVM示例

    滴咚,大家好久不见💖。好就没写东西了,鸽着鸽着就无了😭。。。 回到正题,上篇文章说完命令提了一嘴 MVVM 模式直接就上 MVVMLight 这些程序的框架了,虽然也没说多少,但还是有点不好过渡,这篇对 MVVM 做一些系统学习,同时复习一下前几篇博文中的内容,完成一个采

    2024年02月13日
    浏览(50)
  • WPF控件:密码框绑定MVVM

    以下是一种使用 MVVM 模式的方法: 首先,在 ViewModel 中添加一个属性来保存密码,我们可以使用 SecureString 类型。   创建一个附加属性来处理 PasswordBox 的密码变化,并将其绑定到 ViewModel 中的命令。   在 XAML 中,使用行为触发器来触发命令。 查看密码框的内容。      

    2024年04月24日
    浏览(36)
  • WPF 如何实现事件绑定 (MVVM)

    首先说到绑定,一般是在WPF 中常见的,因为WPF中有一个比较好用的框架叫做 MVVM 所以View层的按钮等元件的的动作都是需要和后台ViewModel 中的函数进行绑定的。 如 我们最常见的按钮的command 绑定 这里面的command 是命令,不是事件 如果点击图片,或者按钮抬起来的时候需要触

    2024年02月04日
    浏览(53)
  • wpf CommunityToolkit.Mvvm8.1 MVVM工具包安装引用指南

      本系列文章导航 https://www.cnblogs.com/aierong/category/2297596.html     0.说明 CommunityToolkit.Mvvm包(又名MVVM 工具包,以前名为 Microsoft.Toolkit.Mvvm)是一个现代、快速且模块化的 MVVM 库。 它支持:.NET Standard 2.0、 .NET Standard 2.1 和 .NET 6(UI Framework 不支持)   文档地址: https://learn.microsoft.com/z

    2023年04月08日
    浏览(40)
  • WPF 使用MVVM框架创建一个项目

    步骤如下: 1、打开Visual Studio 2017(或其他版本),选择新建项目 2、选择WPF应用(.Net Framework),同时给项目命名,并选择项目存放路径,最后点击确定 3、右键点击解决方案名称,点击“管理NuGet程序包”,点击浏览,在输入框中输入mvvmlight,点击MvvmLight进行安装,安装过程

    2024年02月05日
    浏览(65)
  • 浅谈WPF之MVVM工具包

    在之前的WPF示例中,都会用到一个MVVM框,也是一个比较常的MVVM框架,就是MVVM工具包【CommunityToolkit.Mvvm】,今天专门以一个简单的小例子,简述一下MVVM工具包的常见用法,仅供学习分享使用,如有不足之处,还请指正。     CommunityToolkit.Mvvm 包(又名 MVVM 工具包)是一个现代

    2024年03月25日
    浏览(83)
  • WPF CommunityToolkit.Mvvm Messenger通讯

    CommunityToolkit.Mvvm Messenger 十月的寒流: 如何使用 CommunityToolkit.Mvvm 中的 Messenger 来进行 ViewModel 之间的通信 我这里只讲简单的弱Messenger,这个是Toolkit帮我们封装好的,里面好像有什么垃圾回收什么的,里面怎么运行的我也没去研究。我这里就简单讲解一下怎么用 WeakReferenceMess

    2024年02月09日
    浏览(41)
  • 使用MVVM Toolkit简化WPF开发

    最近. NET 8 的 WPF 推出了 WPF File Dialog改进,这样无需再引用 Win32 命名空间就可以实现文件夹的选择与存储了,算是一个很方便的改进了。顺手写了一个小的 WPF 程序,在使用 Model-View-ViewModel(MVVM) 模式的时候,我不想使用 Prism 等重量级的框架,找了一个轻量级的 MVVM Community T

    2024年02月05日
    浏览(61)
  • Wpf在.Net 6 下该用哪个Mvvm框架-Microsoft.Toolkit.Mvvm

    前言 在Wpf下最常使用的就是Mvvm模式了,有自己造轮子构建Mvvm框架的,也有使用现成的开源项目,我之前一直使用的是轻量级的MvvmLight了,这个框架还是非常不错的,使用也简单,不占用太大空间,其中最喜欢的莫过于全局Messenger了,可谓是神器。最近有个项目使用.Net6开发

    2024年02月06日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包