编码空间

【学习 Avalonia MVVM 模式】 0x01 MVVM 核心接口

本文介绍 MVVM 核心的两个接口:ICommand 和 INotifyPropertyChanged。 双向绑定 双向绑定是实现 MVVM 必不可少的部分,他是沟通 View 与 ViewModel 的桥梁,没有绑定,ViewModel定义的输入输出就无从实现。 但绑定并非魔法,再怎么厉害的绑定引擎也无法发现一个变量何时发生变化,除非修改之后告诉绑定引擎。刚好,有一个接口可以做到这个...

【学习 Avalonia MVVM 模式】 0x00 MVVM 介绍

本系列文章面向从未使用过类似框架的 Avalonia 新人,旨在快速构建 MVVM 核心认知,掌握主流 MVVM 框架前置知识,降低框架使用门槛。 如何理解MVVM模式 MVVM 是一种实现 UI 层的模式,M-V-VM 共同构成 UI 本身。关于UI,百科是这么说的: 用户界面(简称UI,亦称使用者界面)是系统和用户之间进行交互和信息交换的媒介,它实现信息的内部形式与人类可以接...

SukiUI 踩坑记录 0x01

很久之前,我刚开始学习 Avalonia 的时候,决定开发一个工具包来满足日常需求,当时采用的 UI框架是 Material.Avalonia。但是我对这个框架并不满意,比如说他没有合适的导航菜单,我一直使用的ListBox 模拟,比如他的 ComboBox 有明显bug但是一两年过去都没有修。恰好前些天看到SukiUI基本解决了性能问题,于是决定尝试一下 替换导航菜单 替换导航菜单本来...