HandyControl 是一个开源、功能强大的 WPF 控件库。它专为 .NET 开发者设计。它的目标是简化 WPF 应用程序的界面开发。它可以提升用户界面的美观性和易用性。它重写了大部分原生控件的样式。它还提供了超过 80 种自定义控件,数量还在不断增加。它可以帮助开发者快速构建现代化、交互性强的桌面应用程序。

主要特点

  1. 丰富的控件集合:HandyControl 包含 80 多个控件。比如按钮、下拉框(ComboBox)、评分控件(Rate)、滑块(Slider)、属性编辑器(PropertyGrid)等。这些控件覆盖了从基本输入到复杂交互的各种场景。
  2. 美观的界面设计:控件采用扁平化风格。它们支持动态更换主题和背景色。它们提供现代化视觉体验。它解决了 WPF 原生控件样式单一的问题。
  3. 跨平台与国际化:它支持跨平台开发。它也支持多语言界面。它适合全球化应用场景。
  4. MVVM 架构支持:它与 MVVM 架构兼容。开发者可以专注于业务逻辑,不用过多关注界面设计。
  5. 易于扩展:它支持自定义控件样式和功能。例如,可以结合阿里矢量图标库导入 Geometry 图标。这样可以增强界面表现力。
  6. 开源免费:它基于 MIT 许可证。代码托管在 GitHub 和 Gitee。开发者可以免费获取源码、示例和文档。

快速入门

  1. 安装:通过 NuGet 包管理器安装。搜索 HandyControl 并安装。也可以直接下载源码编译。

    Install-Package HandyControl
    
  2. 配置:在项目的 App.xaml 文件中添加以下代码。这段代码用于引用 HandyControl 的样式和主题。

    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="pack://application:,,,/HandyControl;component/Themes/SkinDefault.xaml"/>
                <ResourceDictionary Source="pack://application:,,,/HandyControl;component/Themes/Theme.xaml"/>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
    
  3. 添加命名空间:在 XAML 文件中引入 HandyControl 命名空间。

    xmlns:hc="https://handyorg.github.io/handycontrol"
    
  4. 使用控件:例如,使用 HandyControl 的按钮和通知控件。

    <Window xmlns:hc="https://handyorg.github.io/handycontrol">
        <Grid>
            <Button Style="{StaticResource ButtonPrimary}" Content="点击显示通知" Click="Button_Click"/>
            <ScrollViewer VerticalScrollBarVisibility="Hidden" HorizontalAlignment="Right">
                <StackPanel hc:Growl.GrowlParent="True" VerticalAlignment="Top" Margin="0,10,10,10"/>
            </ScrollViewer>
        </Grid>
    </Window>
    

    对应的 C# 代码:

    using HandyControl.Controls;
    public partial class MainWindow : System.Windows.Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            Growl.Success("显示一条通知!");
        }
    }
    

文档展示

https://handyorg.github.io/handycontrol/native_controls/border/

image

image

image

image

image

资源与支持

  • 官网:https://handyorg.github.io/handycontrol
  • GitHub:https://github.com/HandyOrg/HandyControl
  • Gitee:https://gitee.com/handyorg/HandyControl
  • NuGet:https://www.nuget.org/packages/HandyControl

欢迎关注我的公众号“Net分享”,技术文章第一时间推送,随缘更新 , 分享一些你可能注意不到的细节

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐