AtomUI:基于 Ant Design 的 .NET Avalonia UI 控件库介绍与快速上手指南
2025-09-06 2523 0
AtomUI 简介:Ant Design 风格赋能跨平台桌面开发
AtomUI 是一款为 Avalonia/.NET 桌面应用量身打造的高质量控件库,灵感来源于 Ant Design 的优秀设计语言,意在为开发者提供统一、现代且美观的 UI 构建块。它不仅兼容多平台,还让 Windows、macOS、Linux 应用具备企业级的视觉一致性。
该控件库遵循 LGPL-3.0 协议授权,允许免费在商业项目中使用二进制形式的 AtomUI;若修改源代码并自定义控件主题,则需遵循开源协议或申请商业授权。
AtomUI GitHub地址:https://github.com/chinware/AtomUI

AtomUI 核心特性与优势
Ant Design 风格控件:提供符合工业标准的按钮、进度条、表格等控件,视觉统一、易上手。
跨平台支持:基于 Avalonia 开发,可一次编写兼容 Windows、Linux、macOS 等平台。
主题可定制性强:借助 Avalonia 强大的样式系统,可灵活实现 Ant Design 主题色彩风格和组件样式自定义。
模块齐全:除核心库外,还提供 DataGrid 控件、图标打包生成器等多个扩展组件包,满足复杂 UI 构建需求。
AtomUI 快速上手指南
1. 引入 NuGet 包
在项目中添加 AtomUI 最新版本(如 1.0.0-alpha):
<PackageReference Include="AtomUI" Version="1.0.0-alpha" />
如需使用表格控件或图标包,还可额外引用 AtomUI.Controls.DataGrid、AtomUI.IconPkg.Generator 等扩展包。
2. 更新项目配置
将项目 TargetFramework 调整为 .NET 8.0 或更高版本,同时引用 Avalonia 相关依赖:
<ItemGroup>
<PackageReference Include="AtomUI" Version="1.0.0-alpha" />
<PackageReference Include="Avalonia.Desktop" Version="11.x.x" />
</ItemGroup>
3. 启动 AtomUI
在 Program.cs 中初始化 AtomUI 主题管理器:
var builder = AppBuilder.Configure<App>()
.UsePlatformDetect()
.WithInterFont()
.LogToTrace();
var themeBuilder = builder.CreateThemeManagerBuilder()
.UseCultureInfo(new CultureInfo("en_US"))
.UseTheme(ThemeManager.DEFAULT_THEME_ID)
.UseOSSControls();
builder.UseAtomUI(themeBuilder)
.StartWithClassicDesktopLifetime(args);
4. 使用典型控件示例
在 XAML 文件中引用 AtomUI 控件:
<atom:Window xmlns="https://github.com/avaloniaui"
xmlns:atom="using:AtomUI.Controls"
Title="AtomUI Demo" Width="800" Height="600">
<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" Spacing="10">
<atom:Button Content="Click Me" />
<atom:ProgressBar Value="60" Minimum="0" Maximum="100" Width="300"/>
</StackPanel>
</atom:Window>
样即可快速创建按钮和进度条,并获得 Ant Design 视觉体验。
适用场景与建议
- 适合构建企业级桌面应用或员工工具,追求视觉一致性与 UI 标准化。
- 适配跨平台开发需求,减少因平台差异造成的样式适配工作。
- 若需要自定义主题或扩展控件库,可结合 AtomUI 的样式和源生成能力深度定制化。
AtomUI 通过引入成熟的 Ant Design 语言,为 .NET Avalonia 桌面开发注入了现代化的视觉风格与组件体系。它不仅操作上手简单,而且适合跨平台使用与快速迭代。只需几行配置,即可为你的应用搭建起美观统一、高度可维护的 UI 架构。