
关于
使用 Zafiro 和 ReactiveUI 的 Avalonia 最佳 ViewModel 和向导创建模式。
name: avalonia-viewmodels-zafiro description: "使用 Zafiro 和 ReactiveUI 的 Avalonia 最佳 ViewModel 和向导创建模式。" risk: none source: community date_added: "2026-02-27"
Avalonia ViewModels 与 Zafiro
此技能提供一组在 Avalonia 应用程序中创建 ViewModel、向导和管理导航的最佳实践和模式,利用 ReactiveUI 和 Zafiro 工具包的强大功能。
核心原则
- 函数响应式方法:使用 ReactiveUI(
ReactiveObject、WhenAnyValue等)处理状态和逻辑。 - 增强命令:利用
IEnhancedCommand进行更好的命令管理,包括进度报告和名称/文本属性。 - 向导模式:使用
SlimWizard和WizardBuilder实现复杂流程,采用声明式和可维护的方法。 - 自动部分发现:使用
[Section]属性自动注册和发现 UI 部分。 - 干净组合:使用
DataTypeViewLocator将 ViewModel 映射到 View,并在CompositionRoot中管理依赖。
指南
- ViewModels 和命令:创建健壮的 ViewModel 和处理命令。
- 向导和流程:使用
SlimWizard构建多步骤向导。 - 导航和部分:管理导航和基于部分的 UI。
- 组合和映射:View-ViewModel 连接和 DI 的最佳实践。
示例参考
对于真实世界的实现,参考 Angor 项目:
CreateProjectFlowV2.cs:复杂向导构建的优秀示例。HomeViewModel.cs:使用函数响应式命令的简单部分 ViewModel。
何时使用
此技能适用于执行概述中描述的工作流或操作。
限制
- 仅在任务明确匹配上述范围时使用此技能。
- 不要将输出视为环境特定验证、测试或专家审查的替代品。
- 如果缺少所需的输入、权限、安全边界或成功标准,请停下来寻求澄清。
兼容工具
Claude CodeCursor
标签
前端开发