几十款 WPF 控件 - UI 库,总有一款适合你
独立观察员 2022 年 10 月 16 日
引言
众所周知,使用 WPF 框架能够开发出功能强大、界面美观的桌面端应用。能够达到这个效果,各种 WPF 的控件库、UI 库功不可没。所以,想着能不能收集一下目前市面上存在的库,以便在今后需要使用的时候能够手到擒来。这不收集不知道,一收集吓一跳,竟然收集出了三十多款 UI / 控件 库,接下来就一一分享给大家。
01、HandyControl
功能简介:HandyControl 是一套 WPF 控件库,它几乎重写了所有原生样式,同时包含 80 余款自定义控件。
开源情况:开源免费。
源码地址:https://gitee.com/handyorg/HandyControl
克隆地址:https://gitee.com/DLGCY_Clone/HandyControl
文档地址:https://handyorg.github.io/handycontrol/
效果演示:https://gitee.com/handyorg/HandyControl#%E6%A6%82%E8%A7%88
02、MahApps.Metro
功能简介:一个 Metro 风格的 WPF UI 库。A framework that allows developers to cobble together a better UI for their own WPF applications with minimal effort.
开源情况:开源免费。
源码地址:https://github.com/MahApps/MahApps.Metro
克隆地址:https://gitee.com/DLGCY_Clone/MahApps.Metro
文档地址:https://mahapps.com/docs/guides/quick-start
效果演示:https://github.com/MahApps/MahApps.Metro#screenshots
03、Xceed Extended WPF Toolkit™
功能简介:WPF 中缺失的控件。All the controls missing in WPF. Over 1 million downloads.
开源情况:部分控件开源免费(v4.0.0 版本后的许可证适用于非商业用途),有另外的收费部分。
源码地址:https://github.com/xceedsoftware/wpftoolkit
克隆地址:https://gitee.com/DLGCY_Clone/wpftoolkit
文档地址:https://github.com/xceedsoftware/wpftoolkit/wiki#controls
效果演示:
04、Kino.Toolkit.Wpf
功能简介:Kino.Toolkit.Wpf 是一组简单实用的 WPF 控件与工具,用于介绍自定义控件的入门。
开源情况:开源免费。
源码地址:https://github.com/DinoChan/Kino.Toolkit.Wpf
克隆地址:https://gitee.com/DLGCY_Clone/Kino.Toolkit.Wpf
文档地址:https://www.cnblogs.com/dino623/p/WPFCustomControlBlogs.html
效果演示:
05、WPFUI
功能简介:WPF 样式库。
开源情况:开源免费。
源码地址:https://gitee.com/zwt_obj/WPFUI
克隆地址:https://gitee.com/dlgcy/WPFUI
文档地址:无
效果演示:https://gitee.com/zwt_obj/WPFUI#ui%E5%B1%95%E7%A4%BA
06、PP.Wpf
功能简介:PP 为 WPF 做的控件库。
开源情况:开源免费。
源码地址:https://github.com/LowPlayer/PP.Wpf
克隆地址:https://gitee.com/DLGCY_Clone/PP.Wpf
文档地址:https://www.cnblogs.com/pumbaa/p/14298931.html
效果演示:
07、adonis-ui
功能简介:提供经典但增强的窗体视觉效果的 WPF 轻量级 UI 工具库。Lightweight UI toolkit for WPF applications offering classic but enhanced windows visuals.
开源情况:开源免费。
源码地址:https://github.com/benruehl/adonis-ui
克隆地址:https://gitee.com/DLGCY_Clone/adonis-ui
文档地址:https://benruehl.github.io/adonis-ui/docs/getting-started/introduction/
效果演示:https://github.com/benruehl/adonis-ui#features
08、CC.WPFTools
功能简介:WPF 的控件库 包装常用功能及 UI 控件。
开源情况:开源免费。
源码地址:https://gitee.com/chenhome/WPFTOOLS
克隆地址:https://gitee.com/DLGCY_Clone/WPFTOOLS
文档地址:https://www.yuque.com/chch/wpftools
外部关系:参考了 MahApps.Metro 和 Modern UI for WPF (MUI)
效果演示:
09、Modern UI for WPF (MUI)
功能简介:Modern UI for WPF。
开源情况:开源免费。
源码地址:https://github.com/firstfloorsoftware/mui (已归档)
克隆地址:https://gitee.com/DLGCY_Clone/mui
文档地址:https://github.com/firstfloorsoftware/mui/wiki/Getting-started
效果演示:
10、CookPopularControl
功能简介:CookPopularControl 是一款流行的 WPF 控件库,提供近 70 多款常用的组件,同时提供一些常用的工具类方法。
开源情况:开源免费。
源码地址:https://gitee.com/cook-csharp/CookPopularControl
克隆地址:https://gitee.com/DLGCY_Clone/CookPopularControl
文档地址:https://gitee.com/cook-csharp/CookPopularControl#welcome-to-cookpopularcontrol
效果演示:https://gitee.com/cook-csharp/CookPopularControl#%E4%BD%BF%E7%94%A8
(Demo 编译不成功,以下图片来自上面的链接)
11、PropertyTools
功能简介:一些 WPF 自定义控件:PropertyGrid, DataGrid, 多选 TreeView, ColorPicker 等等。
开源情况:开源免费。
源码地址:https://github.com/PropertyTools/PropertyTools
克隆地址:https://gitee.com/DLGCY_Clone/PropertyTools
文档地址:无。
效果演示:https://github.com/PropertyTools/PropertyTools#propertygrid
(以下为各 Demo 截图,DialogDemos 和 DataGridDemo 未编译成功)
12、MaterialDesignInXamlToolkit
功能简介:Google's Material Design in XAML & WPF, for C# & VB.Net.
开源情况:开源免费。
源码地址:https://github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit
克隆地址:https://gitee.com/DLGCY_Clone/MaterialDesignInXamlToolkit
文档地址:https://github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit//wiki
效果演示:https://github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit#-screenshots
13、RRQMSkin
功能简介:适用于 WPF (所有框架) 的控件皮肤库,主要含有 Window 窗体,水波纹按钮,仪表盘,扇形进度条等。
开源情况:开源免费。
源码地址:https://gitee.com/RRQM_Home/RRQMSkin
克隆地址:https://gitee.com/DLGCY_Clone/RRQMSkin
文档地址:无。
效果演示:https://blog.csdn.net/qq_40374647/article/details/108284794
14、Layui-WPF
功能简介:这是一个 WPF 版的 Layui 前端 UI 样式库。
开源情况:开源免费。
源码地址:https://github.com/Layui-WPF-Team/Layui-WPF
克隆地址:https://gitee.com/DLGCY_Clone/Layui-WPF
文档地址:无。
效果演示:https://github.com/Layui-WPF-Team/Layui-WPF#layui-wpf
(贴一些与上面链接中不一样的图。另外,上面链接和以下皆没有出现的,有些是还没有实现的)
15、Newbeecoder.UI
功能简介:一个网友自制的 WPF UI 库。
开源情况:收费。
源码地址:无。
克隆地址:无。
文档地址:无。
效果演示:https://blog.csdn.net/liaohaiyin/article/details/124578601
16、Panuon.WPF.UI
功能简介:一个专业的定制化 UI 引擎。(旧版本名为 Panuon.UI.Silver [Panuon.UI 的优化版本])
开源情况:开源免费。
源码地址:https://github.com/PanuonGroup/Panuon.WPF.UI
克隆地址:https://gitee.com/DLGCY_Clone/Panuon.WPF.UI
文档地址:https://github.com/PanuonGroup/Panuon.WPF.UI/wiki/Home-zh-CN
效果演示:https://github.com/PanuonGroup/Panuon.WPF.UI/blob/master/readme.zh-CN.md#%E7%A4%BA%E4%BE%8B
17、Arthas-WPFUI
功能简介:一款 WPF 控件库。
开源情况:开源免费。
源码地址:https://github.com/0x6863/Arthas-WPFUI
克隆地址:https://gitee.com/DLGCY_Clone/Arthas-WPFUI
文档地址:无。
效果演示:https://github.com/0x6863/Arthas-WPFUI#arthas
(以下为 master 分支的 Demo 截图;最新的为 develop 分支,不过删除了好多内容)
18、AduSkin
功能简介:一款简单漂亮的 WPF UI,融合多个开源框架组件,为个人定制的 UI,可供学者参考和使用。
开源情况:开源免费。
源码地址:https://github.com/aduskin/AduSkin
克隆地址:https://gitee.com/DLGCY_Clone/AduSkin
文档地址:无。
外部关系:感谢开源框架 HandyControl、Arthas、WPF.UI(ZdfFlatUI)
效果演示:https://github.com/aduskin/AduSkin#%E7%BB%84%E4%BB%B6%E5%B1%95%E7%A4%BA
19、HeBianGu/WPF-ControlBase
功能简介:Wpf 封装的自定义控件资源库。
开源情况:开源免费。
源码地址:https://github.com/HeBianGu/WPF-ControlBase
克隆地址:https://gitee.com/DLGCY_Clone/WPF-ControlBase
文档地址:https://github.com/HeBianGu/WPF-ControlBase#%E4%BD%BF%E7%94%A8
效果演示:https://github.com/HeBianGu/WPF-ControlBase#%E6%A1%88%E4%BE%8B
(项目过多,生成不便,以下为前三个 Demo 的截图,其它的参考上面的链接)
20、FruitVentDesign
功能简介:这是一个基于.net core 3.1 写的 WPF UI 控件库。
开源情况:开源免费。
源码地址:https://gitee.com/fruitvent/fruit-vent-design
克隆地址:https://gitee.com/DLGCY_Clone/fruit-vent-design
文档地址:无。
外部关系:有使用 Xceed Extended WPF Toolkit™。
效果演示:https://blog.csdn.net/weixin_39552347/article/details/122855029
(贴些上面链接没有的截图)
21、DMSkin
功能简介:DMSkin WPF 样式 UI 框架 | WPF Borderless Window | Custom Controls & Styles | MVVM Support
开源情况:开源免费。
源码地址:https://github.com/944095635/DMSkin
克隆地址:https://gitee.com/DLGCY_Clone/DMSkin
文档地址:https://github.com/944095635/DMSkin#2%E9%A1%B9%E7%9B%AE%E6%A8%A1%E5%9D%97%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E
外部关系:有使用 AduSkin 。
效果演示:http://www.dmskin.com/
(以下截图为 3 个 Demo 的全部内容,其余为空)
22、WPF.UI(ZdfFlatUI)
功能简介:WPF UI 库(ZdfFlatUI)。
开源情况:开源免费。
源码地址:https://github.com/zhidanfeng/WPF.UI
克隆地址:https://gitee.com/DLGCY_Clone/WPF.UI
文档地址:https://www.cnblogs.com/zhidanfeng/ (作者博客)
效果演示:
23、ModernWPF
功能简介:现代风格的 WPF 样式和控件。Modern styles and controls for your WPF applications。
开源情况:开源免费。
源码地址:https://github.com/Kinnara/ModernWpf
克隆地址:https://gitee.com/DLGCY_Clone/ModernWpf
文档地址:https://github.com/Kinnara/ModernWpf#quick-start
效果演示:https://github.com/Kinnara/ModernWpf#screenshots
(未编译成功,效果见上面链接)
24、Fluent.Ribbon
功能简介:像 Office 一样的 WPF Ribbon 控件。WPF Ribbon control like in Office。
开源情况:开源免费。
源码地址:https://github.com/fluentribbon/Fluent.Ribbon
克隆地址:https://gitee.com/DLGCY_Clone/Fluent.Ribbon
文档地址:https://fluentribbon.github.io/documentation/
效果演示:https://github.com/fluentribbon/Fluent.Ribbon/wiki/Screenshots
题外话:本次测试了大多数项目都是支持多 SDK 的,但是我的电脑并没有安全部的 SDK,玩玩最终就是删除其中某些 SDK 的支持,或者是死活编译不通过。目前为止,只有本项目有以下提示,并且能调出安装界面,提出表扬。
不过最终还是没有编译成功。效果看上面的链接吧。
25、EASkins
功能简介:.NET WinForm 和 WPF 的 UI 界面库,收集整合多个优秀库及示例。
开源情况:开源免费。
源码地址:https://gitee.com/airscrat/EASkins/tree/EASkins_WPF/
克隆地址:https://gitee.com/DLGCY_Clone/EASkins/tree/EASkins_WPF/
文档地址:无。
效果演示:https://gitee.com/airscrat/EASkins (见 ReadMe)
26、Rubyer-WPF
功能简介:一款通用的 WPF 主题控件包。
开源情况:开源免费。
源码地址:https://gitee.com/wuyanxin1028/rubyer-wpf
克隆地址:https://gitee.com/DLGCY_Clone/rubyer-wpf
文档地址:https://www.cnblogs.com/ensin/p/14309464.html
效果演示:https://gitee.com/wuyanxin1028/rubyer-wpf#demo-%E6%88%AA%E5%9B%BE
(未编译成功,效果见上面链接)
27、wpf.controls
功能简介:一套入门基础 UI 库。
开源情况:开源免费。
源码地址:https://github.com/kwonganding/wpf.controls
克隆地址:https://gitee.com/DLGCY_Clone/wpf.controls
文档地址:https://www.cnblogs.com/anding/p/5018363.html
效果演示:https://github.com/kwonganding/wpf.controls#%E7%AC%AC%E4%B8%80%E7%89%88%E7%9A%84%E6%95%88%E6%9E%9C%E5%9B%BE
V1:
28、WPFDevelopers.Minimal
功能简介:WPF 基础控件库。
开源情况:开源免费。
源码地址:https://github.com/WPFDevelopersOrg/WPFDevelopers.Minimal
克隆地址:https://gitee.com/DLGCY_Clone/WPFDevelopers.Minimal
文档地址:https://github.com/WPFDevelopersOrg/WPFDevelopers.Minimal/blob/main/README-zh.md#%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95
效果演示:https://github.com/WPFDevelopersOrg/WPFDevelopers.Minimal#preview
29、WPFDevelopers
功能简介:WPF 自定义高级控件库。此项目是公众号《WPF 开发者》日常分享 Sample,持续更新中。
开源情况:开源免费。
源码地址:https://github.com/WPFDevelopersOrg/WPFDevelopers
克隆地址:https://gitee.com/DLGCY_Clone/WPFDevelopers
文档地址:无。
效果演示:https://github.com/WPFDevelopersOrg/WPFDevelopers#windowacrylicblur
98、跨平台
98.1、ReactiveUI:https://github.com/reactiveui/ReactiveUI
99、商业组件
99.1、DevExpress WPF UI Library:https://www.devexpress.com/products/net/controls/wpf/
99.2、Telerik UI for WPF:https://www.telerik.com/products/wpf/overview.aspx
99.3、Syncfusion WPF controls:https://www.syncfusion.com/wpf-controls (社区版申请:https://www.syncfusion.com/products/communitylicense )
99.4、infragistics Ultimate UI for WPF:https://www.infragistics.com/products/wpf
99.5、ComponentOne Studio WPF:https://www.componentsource.com/product/componentone-studio-wpf
资源
列举了这么多库,也贴了很多链接和图片,其实还是管中窥豹。真正要深入了解,最好还是要下载下源代码进行研究比较。或者,如果只是需要对比以便使用,那么运行起各个库的 Demo 程序即可满足需求。
好消息是,本人已将大部分库的示例程序(除了一些编译不成功或功能过于简单的)编译好了,可关注本人的微信公众号 “独立观察员博客”(DLGCY_BLOG),回复 “wpfui” 即可获取下载地址。
WPF
WPF 用户控件分享之边上带输入框的圆圈
分享一个 WPF 气泡弹框
WPF 表单验证之 INotifyDataErrorlnfo 接口的使用示例
[翻译] WPF 中用户控件 DataContext/Binding 和依赖属性的问题
OxyPlot 导出图片及 WPF 元素导出为图片的方法
让 WPF 的 RadioButton 支持再次点击取消选中的功能
WPF DataGrid 如何将被选中行带到视野中
WPF 触屏事件后触发鼠标事件的问题及 DataGrid 误触问题
WPF DataGrid 通过自定义表头模拟首行固定
WPF ComboBox 使用 ResourceBinding 动态绑定资源键并支持语言切换
【翻译】WPF 中附加行为的介绍 Introduction to Attached Behaviors in WPF
WPF 使用 Expression Design 画图导出及使用 Path 画图
WPF MVVM 弹框之等待框
解决 WPF 绑定集合后数据变动界面却不更新的问题(使用 ObservableCollection)
WPF 消息框 TextBox 绑定新数据时让光标和滚动条跳到最下面
真・WPF 按钮拖动和调整大小
WPF MVVM 模式下的弹窗
WPF 让一组 Button 实现 RadioButton 的当前样式效果
WPF 原生绑定和命令功能使用指南
WPF 用户控件的自定义依赖属性在 MVVM 模式下的使用备忘
在WPF的MVVM模式中使用OCX组件