Agent Skills
返回列表
💻

Zafiro Avalonia 布局

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/avalonia-layout-zafiro。

技能介绍

布局为什么会变难维护

Avalonia 项目一旦视图变多,常见症状是 Grid 与 StackPanel 层层套叠、同一套边距和标题样式在多个 axaml 里复制粘贴,以及用 IValueConverter 处理本可以放在 ViewModel 或 UI 行为里的逻辑。硬编码颜色与尺寸会让换主题和统一视觉成本陡增。

技能在讲什么

本技能围绕 Zafiro.Avalonia 的组织方式,按场景拆成主题、容器、图标、Behaviors 与可复用组件等专题,并强调 按需阅读:只打开与当前布局问题相关的说明,而不是通读整库。

核心能力包括:

  • 语义化容器:用 HeaderedContainer、EdgePanel、Card 等表达「带标题区块」「边缘对齐」「卡片」等意图,替代手动 Border + TextBlock 拼标题。
  • 共享样式与主题:颜色与画刷走 DynamicResource,重复视觉属性收敛到 Styles / 主题文件(见 themes 相关指引)。
  • 图标:通过 {Icon fa-name} 与 IconOptions 统一图标用法,避免各控件各自写 Path 或重复属性。
  • Behaviors 优先:复杂交互优先 Xaml.Interaction.Behaviors,减少后置代码与不必要的 Converter。
  • 扁平化结构:用 EdgePanel、泛型组件减少嵌套深度(components 相关指引)。

文内还提供 整洁布局检查清单 与 反模式对照(例如避免字面量尺寸、深层嵌套、重复属性),并指向 Angor 等示例解决方案作为真实 axaml 参考。

适用边界

技能侧重 布局与 XAML 结构,不替代 Avalonia 官方文档中的绑定、路由或平台部署说明。若项目未引入 Zafiro.Avalonia,需先具备对应 NuGet/项目引用;Converter 并非绝对禁止,文档建议是 仅在必要时 使用,简单展示逻辑应回到 ViewModel 属性或 Behaviors。

使用场景

  • 现有设置页用多层 Grid 堆标题和边框,需要改成 HeaderedContainer 或 Card 并统一边距样式
  • 应用换深色主题时大量 axaml 仍写死颜色,需要按 themes 指引改为 DynamicResource 与共享 Styles
  • 列表与详情页要在多处复用相同图标样式,需要用 IconExtension 与 IconOptions 替代重复 Path
  • 表单校验与按钮可用性目前写在 Converter 或 code-behind,希望改用 Interaction.Behaviors 绑定 ViewModel

适合人员

  • 维护 Avalonia 业务客户端、需要在 PR 里减少 axaml 嵌套与重复样式的桌面开发
  • 从 WPF 迁到 Avalonia、已引入 Zafiro 库并要按容器与 EdgePanel 模式重排现有视图
  • 负责应用主题与资源字典、要把字面量颜色和尺寸收敛到共享主题文件的 UI 工程师
  • 在 Angor 或同类项目中对照示例、为团队制定 Zafiro 布局检查清单的技术负责人