当前位置: 首页 > news >正文

WPF优秀项目推荐:Stylet 一个非常轻量但强大的 ViewModel-First MVVM 框架

Stylet介绍

Stylet 是一个小型但功能强大的 ViewModel 优先的 MVVM 框架,适用于 WPF (.NET 4.5.2+ 和 .NET Core 3.0+),它允许您编写易于测试的可维护和可扩展的代码。

Stylet 的目标是:

解决没有框架时阻碍 MVVM 开发的障碍、烦恼和不便,使用简单但强大的概念。

对于第一次接触您项目的人员来说是显而易见的:几乎没有什么魔法。

易于验证/验证。代码行数较少,并附有非常全面的测试套件。代码编写良好且文档齐全。

提供灵活性同时提供合理的默认值。框架的几乎任何部分都可以根据需要重写,但您可能不需要这样做。

它受到 Caliburn.Micro 的启发,分享了其许多概念,但去除了大多数魔法(用更强大的替代方案替换),并通过仅针对 MVVM、WPF 和 .NET 4.5.2 大幅简化了部分功能。

GitHub地址:https://github.com/canton7/Stylet

image-20250811225734949

如何快速入门

第一,有一个Samples,克隆代码之后,可以先打开这个示例项目。

通过运行这几个项目,可以快速了解Stylet提供了什么功能。

image-20250811230504582

第二,查看官方文档。

Style的官方文档地址:https://github.com/canton7/Stylet/wiki

作者通过这几个方面进行了说明:

image-20250811230613931

现在就一起简单地看看Stylet的一些概念与设计!!

首先最重要的就是ViewModel优先!!

经典的MVVM结构中,视图知道如何实例化其ViewModel,而ViewModel通常不会直接通信,这种模式被称为视图优先。然而,反转这种模式——自己实例化ViewModel,然后让视图自动附加——提供了许多优势,使你可以以一种非常熟悉的方式组合你的ViewModel。这种ViewModel优先的方法是Stylet唯一支持的方法。

在Stylet中可以通过ViewModel自动绑定到对应的View,这样的话,就可以这样写:

image-20250811231018609

在xaml文件中可以通过ViewModel找到对应的视图,非常方便!!

第二点就是Action!!

WPF 中使用的 ICommand 接口功能强大,但在 MVVM 架构中使用时显得笨拙。让 ViewModel 中响应按钮点击等操作的方法表示为属性而不是方法似乎不合逻辑。一个简单的

http://www.aitangshan.cn/news/724.html

相关文章:

  • GNOME安装扩展配置工具及常用扩展
  • AtCoder Beginner Contest 410 (A - F)
  • 反向代理,重定向,forward
  • 内网DNS-dnsmasq服务详解
  • 【自学嵌入式:stm32单片机】TIM定时中断
  • 手艺融合赋能文旅元宇宙:虚实共生重构产业新生态
  • C语言数据结构《顺序表》教案
  • 数据库获得当前日期和时间
  • 【大二病也要学离散!】第三章 函数
  • QOJ5459 Goose, goose, DUCK? 题解 [ 蓝 ] [ 扫描线 ] [ 线段树 ]
  • 【日记】谈判失败(2273 字)
  • LSB隐写原理解析
  • 利用Active Directory进行攻击防御 - 实战技术与工具解析
  • 数据结构《课程导入 绪论》教案
  • Windows11正式版如何修改开机音乐的问题
  • 深度技术win10专业版电脑出现假死的问题
  • Spring boot SseEmitter 推送数据客户端乱码
  • Apache SeaTunnel 新定位!迈向多模态数据集成的统一工具
  • [完结22章]LLM应用全流程开发 全新技术+多案例实战+私有化部署
  • IP地址转换
  • Springboot+vue3 MinIO文件前端直传例子
  • 【刷题笔记】日照集训 Day3
  • GAS_Aura-The Gameplay Ability System
  • 深度解析10BASE-T1S PLCA的多节点通信效率
  • ESP32 + PCA9685(16通道 PWM 扩展模块)来驱动多个 9g 舵机
  • k8s 新版创建完 serviceaccount 后-- 不再生成 对应的--token
  • 验证码厂商对比及选型
  • debian更换NVIDIA 官方驱动
  • 经纬恒润推动汽车软件安全新生态,打造全流程质量协同新范式
  • 2025杭电多校第七场 矩形框选、伤害冷却比 个人题解 - CUC