WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面。

微软提供的WPF控件的功能很强大,但是样式不漂亮,需要专业的美工设计样式或皮肤。圈子里总有无私奉献的大牛们分享既漂亮又好用的WPF组件库,下面收集了几款非常优秀的WPF开源组件。

开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激、尊重。请严格遵守每个项目的开源协议后再使用。尊重知识产权,共建和谐开源社区。

1、MaterialDesignInXAML

MaterialDesignInXAML完全开源,是WPF最流行的GUI库之一,该库还与MahApps和Dragablz兼容。通过XAML工具箱中的设计,可以使用现代流行的设计语言轻松地将漂亮的桌面应用程序带到生活中。

组件特征

  • 支持大多数标准WPF控件的样式和变体
  • 更多的附加控件,以支持材质设计的美观性和流动性
  • 在设计和运行时轻松配置材质设计调色板
  • 用于轻松构建GUI动画的转换API
  • 独立工作,也与其他流行的WPF框架MahApps和Dragablz兼容
  • 支持MVVM框架

示例效果

1、首页

布局简洁、清爽、效果直观

2、支持主题风格切换

该控件库配有数十种颜色风格,满足大部分配色要求。也可以自定义皮肤。

3、按钮

多种形状的交互按钮,如圆形按钮、图标按钮、按钮进度、按钮文字提示等等,Web中常见的效果WPF中也可以简单地使用。

4、输入验证框

表单验证,常规做法是在ViewModel中写业务逻辑验证代码,或者在XAML中写验证表达式。该控件库实现了较多的验证器,可直接使用,代码使用简单,且界面提示很友好,类似手机端输入、错误提示。

5、标签

控件英文Chips,可用于标签,当列表显示数据较多时,可显示多个标签,用于点击过滤。

6、卡片

Cards,卡片式布局,列表、表格显示数据有时是很枯燥的,用卡片会给人耳目一新的感觉,很清爽,展示数据也一目了然,可图片+文字的形式展示,非常友好。

7、图标

Icon Pack,有成百上千钟矢量图标供选择,极大的方便了开发,可用于菜单图标、按钮图标等。

8、分组框

Group Boxes,组合框,类似卡片,组合框Header自定义很方便,可添加图片

9、进度条

各式各样的进度条,还在为调整进度条各个部分而烦恼吗?这个控件库写了几种样式,几乎满足了一般需求使用了,不满足在上面基础上修改也是十分方便的。

10、对话框

遮罩式对话框,支持整个窗体遮罩,也支持窗体部分用户控件对话框,非常实用

11、抽屉

Drawer,抽屉式控件,支持东、南、西、北四个方向打开抽屉。

12、提示信息

提示信息,这种方式不用弹框(免得用户点击关闭,即时加定时器自动关闭也不是很友好),可用于提示性的信息,看一眼即可这种。

更多功能请参考官网与开源项目。

官网:http://materialdesigninxaml.net

开源地址:https://github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit

MaterialDesignExtensions 扩展库:https://github.com/spiegelp/MaterialDesignExtensions
 
2、MahApps.Metro 

Metro是一个框架,允许开发人员用最小的努力为自己的WPF应用程序设计出Metro或现代UI。

  • 增强默认控件

    Metro重写了所有常见WPF控件的默认样式,并为它们提供了现代的外观。

  • 样式与自定义控件

    Metro还包括一些基于WindowsPhone、Windows8和Windows10(UWP)应用程序概念的自定义控件。

  • 开源

    MahApps.Metro的源代码托管在GitHub上,包含了自己构建它所需的一切,所以请访问并帮助我们改进它。

功能展示

官网:https://mahapps.com

教程:https://mahapps.com/docs

开源地址:https://github.com/MahApps/MahApps.Metro

3、AduSkin(功能强大,产品示例较多)

AduSkin是一款简单漂亮的WPF UI,融合多个开源框架组件,为个人定制的UI,可供学者参考和使用。

  • 产品功能

    控件库

    动态修改皮肤

  • 产品示例
    • 【AduMusic Mini】

                    

    • 【AduShopping】

        

    • 【AduChat】

      

    • 【心理FM】

        

    • 【SuperEvil】

        

    • 【HttpTool】

         

  • 特色控件组合案例

官网:https://github.com/aduskin

开源地址:https://github.com/aduskin/AduSkin


参考文献:

  • https://www.cnblogs.com/lsq6/archive/2019/12/01/11966708.html
  • https://dotnet9.com/9373.html
  • https://www.cnblogs.com/aduskin/archive/2019/12/26/12101712.html
  • https://www.cnblogs.com/lsq6/archive/2019/12/04/11980648.html

.NET Core/.NET5/.NET6 开源项目汇总11:WPF组件库1的更多相关文章

  1. .NET Core/.NET5/.NET6 开源项目汇总12:WPF组件库2

    系列目录     [已更新最新开发文章,点击查看详细] WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Frame ...

  2. .NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

    系列目录     [已更新最新开发文章,点击查看详细] .NET Core 实现了跨平台,支持在 Windwos.Linux.macOS上开发与部署,但是也仅限于Web应用程序.对于Windows桌面 ...

  3. .NET Core/.NET5/.NET6 开源项目汇总5:权限管理系统项目

    系列目录     [已更新最新开发文章,点击查看详细] 企业管理系统一般包含后台管理UI.组织机构管理.权限管理.日志.数据访问.表单.工作流等常用必备功能.下面收集的几款优秀开源的管理系统,值得大家 ...

  4. .NET Core/.NET5/.NET6 开源项目汇总6:框架与架构设计(DDD、云原生/微服务/容器/DevOps/CICD等)项目

    系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...

  5. .NET Core/.NET5/.NET6 开源项目汇总8:Blazor项目

    系列目录     [已更新最新开发文章,点击查看详细] Blazor 是一个使用 .NET 生成交互式客户端 Web UI 的框架: 使用 C# 代替 JavaScript 来创建信息丰富的交互式 U ...

  6. .NET Core/.NET5/.NET6 开源项目汇总10:实用工具

    系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...

  7. .NET Core/.NET5/.NET6 开源项目汇总1:常用必备组件

    系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...

  8. .NET Core/.NET5/.NET6 开源项目汇总2:任务调度组件

    系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...

  9. .NET Core/.NET5/.NET6 开源项目汇总3:工作流组件

    系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...

随机推荐

  1. 使用 Flux+Flagger+Istio+Kubernetes 实战 GitOps 云原生渐进式(金丝雀)交付

    在这篇指南中,你将获得使用 Kubernetes 和 Istio 使用 GitOps 进行渐进式交付(Progressive Delivery)的实际经验. 介绍 gitops-istio GitOp ...

  2. Nextcloud 使用教程

    一.简介 Nextcloud是一个网盘式文件管理系统,多用户权限管理,多客户端,使用简单.可在浏览器中运行,也可下客户端,不论使用哪种方式运行,使用教程都是一样的. 只是在客户端中运行时能及时收到相应 ...

  3. mysql 多字段联合唯一索引

    6个字段组成联合唯一索引 索引名称code_level_metric_type_week_year sql语句联合索引 CREATE UNIQUE INDEX code_level_metric_ty ...

  4. CUDA 9中张量核(Tensor Cores)编程

    CUDA 9中张量核(Tensor Cores)编程 Programming Tensor Cores in CUDA 9 一.概述 新的Volta GPU架构的一个重要特点是它的Tensor核,使T ...

  5. TensorRT 基于Yolov3的开发

    TensorRT 基于Yolov3的开发 Models Desc tensorRT for Yolov3 https://github.com/lewes6369/TensorRT-Yolov3 Te ...

  6. ffmpeg architecture(上)

    ffmpeg architecture(上) 目录 介绍 视频-您看到的是什么! 音频-您在听什么! 编解码器-缩小数据 容器-音频和视频的舒适场所 FFmpeg-命令行 FFmpeg命令行工具101 ...

  7. Java IO学习笔记七:多路复用从单线程到多线程

    作者:Grey 原文地址:Java IO学习笔记七:多路复用从单线程到多线程 在前面提到的多路复用的服务端代码中, 我们在处理读数据的同时,也处理了写事件: public void readHandl ...

  8. 第11章 PADS功能使用技巧(2)-最全面

    原文链接点击这里 七.Flood与Hatch有什么区别? 我们先看看PADS Layout Help 文档是怎么说的,如下图所示: 从检索到的帮助信息,我们可以得到Hatch与Pour的区别,原文如下 ...

  9. uniapp 打包IOS 更新AppStore版本

    Hello 你好,我是大粽子. 最近随着新版本UI的发布APP也随之更新,随之而来的也就是IOS程序提审步骤,这次我详细的截图了每一个步骤,如果你正好也需要那么跟着我的节奏一步步来肯定是没问题的. 提 ...

  10. 对比 Verilog 和 SystemVerilog 中的基本数据类型

    作为引子,首先来看一段描述,该段介绍了SystemVerilog对比Verilog在RTL设计和建模时的新特性之一(logic数据类型),然后下文我再展开对比介绍Verilog和SystemVeril ...