首页 > 其他分享 >循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发

循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发

时间:2023-12-23 22:44:19浏览次数:48  
标签:基于 CommunityToolkit 框架 Mvvm -- 开发 HandyControl 循序渐进 SqlSugar

https://www.cnblogs.com/wuhuacong/tag/WPF/

 

在我们的SqlSugar的开发框架中,整合了Winform端、Vue3+ElementPlus的前端、以及基于UniApp+Vue+ThorUI的移动前端几个前端处理,基本上覆盖了我们日常的应用模式了,本篇随笔进一步介绍前端应用的领域,研究集成WPF的应用端,循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发。

1、基于CommunityToolkit.Mvvm开发WPF应用

MVVM是Model-View-ViewModel的简写。类似于目前比较流行的MVC、MVP设计模式,主要目的是为了分离视图(View)和模型(Model)的耦合。
它是一种极度优秀的设计模式,但并非框架级别的东西,由MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构。

 MVVM模式和MVC模式一样,主要目的是分离视图(View)和模型(Model),有几大优点
1. 低耦合:视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的View上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。
2. 可重用性:可以把一些视图逻辑放在一个ViewModel里面,让很多View重用这段视图逻辑。
3. 独立开发:开发人员可以专注于业务逻辑和数据的开发(ViewModel),设计人员可以专注于页面设计,使用Expression Blend可以很容易设计界面并生成xml代码。
4. 可测试:界面素来是比较难于测试的,而现在测试可以针对ViewModel来写。

CommunityToolkit.Mvvm  (又名 MVVM 工具包,以前名为 Microsoft.Toolkit.Mvvm) 是一个现代、快速且模块化的 MVVM 库。 它是 .NET 社区工具包的一部分,围绕以下原则构建:

相关文章

  • WPF MvvmToolkit入门
    最新.net6wpfMVVMToolkit8.0工程搭建。MVVMToolkit是一个轻量级MVVM框架,在框架下我们第一个要做的就是搞清在此框架下的一些常规操作:属性绑定和通知,命令绑定,消息传递。搞懂这些处理流程,然后就可以写自己业务的逻辑。1.安装mvvmtoolkit1.1Nuget下载CommunityToolkit.Mvvm......
  • [WPF] 使用 MVVM Toolkit 构建 MVVM 程序(CommunityToolkit.Mvvm)
    1.什么是MVVMToolkit模型-视图-视图模型(MVVM)是用于解耦UI代码和非UI代码的UI体系结构设计模式。借助MVVM,可以在XAML中以声明方式定义UI,并使用数据绑定标记将UI链接到包含数据和命令的其他层。微软虽然提出了MVVM,但又没有提供一个官方的MVVM库(多年前有过......
  • WPF+SqlSugar+MVVM实现增删改查
    1、新建一个WPF应用(NETFramework)2、安装SqlSugarNuGet包3、在SqlSugar4.x下载代码生成器https://www.donet5.com/Doc/8/11374、在WPF中新建三个文件夹Models主要放实体类、Views主要放窗体、ViewModels主要是View逻辑的实现5、把生成的实体类放到Models文件夹内,在V......
  • CommunityToolkit.Mvvm 之 通过一个属性控制一个按钮是否禁用 及 按钮执行费时需任务
    要达到的目的:通过一个属性控制一个按钮是否禁用当按钮执行费时需任务时,按下禁用按钮,任务完成后自动解除禁用1. 属性定义1[ObservableProperty]2[NotifyCanExecuteChangedFor(nameof(SettingParamCommand))]//属性变化时通知对应的命令3privateboolallowOperator;2.......
  • .NET Core 3 WPF MVVM框架 Prism系列之导航系统
    本文将介绍如何在.NETCore3环境下使用MVVM框架Prism基于区域Region的导航系统git在讲解Prism导航系统以前,咱们先来看看一个例子,我在以前的demo项目建立一个登陆界面:github 咱们看到这里是否是一开始想象到使用WPF带有的导航系统,经过Frame和Page进行页面跳转,而后经过导航日志......
  • 08 MVVM框架
    08MVVM框架WPF是WindowsPresentationFoundation的缩写,它是一种用于创建桌面应用程序的用户界面框架。WPF支持多种开发模式,其中一种叫做MVVM(Model-View-ViewModel)。在WPF开发中,经典的编程模式是MVVM,是为WPF量身定做的模式,该模式充分利用了WPF的数据绑定机制,最大限度地降低了Xa......
  • 进一步学习 CommunityToolkit.Mvvm
    1.属性绑定privatestringtitle;publicstringTitle{get;set;} 可用以下属性方式替换,生成器会自动生成;[ObservableProperty]privatestringtitle; 另一种情况:命令privateboolisEnabled;publicboolIsEnabled{......
  • 进一步学习 CommunityToolkit.Mvvm 之 Messenger
    一、带token1.订阅消息WeakReferenceMessenger.Default.Register<UserMessage,string>(this,"MyToken",(r,m)=>{});2.发送消息WeakReferenceMessenger.Default.Send(newUserMessage(value),"MyToken");二、某一种数据类型发送接收消息1.订阅消息V......
  • [转][C#][WPF]MVVM 下的 ComboBox 数据绑定效果
    参考:https://www.cnblogs.com/xpvincent/p/3848790.html参考:https://blog.csdn.net/zhudaokuan/article/details/109059333前端:<ComboBoxName="cmbBox"ItemsSource="{Bindinglist}"DisplayMemberPath="Code"SelectedValu......
  • 前端框架中 MVC 和 MVVM 两种设计方式的区别
    MVC和MVVM是两种常见的软件架构模式。它们都致力于提供清晰的组织结构和代码分离,让开发者能够更有效率地开发和维护复杂的应用程序。然而,它们在组织代码和处理用户交互上有一些重要的区别。首先,让我们了解一下MVC(Model-View-Controller)模式。MVC是一种设计模式,被广泛应用于......