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. .NET5 WPF进阶教程

    一.概要 本系列将继<.net wpf快速入门教程>带领大家了解wpf,帮助各位在初级向中级过渡的中掌握基本该具备的能力.本系列视频长度大约在15分钟到30分钟左右,视频内容不仅仅会讲解技 ...

  2. 支持边云协同终身学习特性,KubeEdge子项目Sedna 0.3.0版本发布!

    摘要:随着边缘设备数量指数级增长以及设备性能的提升,边云协同机器学习应运而生,以期打通机器学习的最后一公里. 本文分享自华为云社区<支持边云协同终身学习特性,KubeEdge子项目Sedna 0 ...

  3. GO学习-(8) Go语言基础之数组

    Go语言基础之数组 Array(数组) 数组是同一种数据类型元素的集合. 在Go语言中,数组从声明时就确定,使用时可以修改数组成员,但是数组大小不可变化. 基本语法: // 定义一个长度为3元素类型为 ...

  4. node.js学习(6)创建和删除目录

    1 导入模块 fs 删除文件 # 同步 创建目录 删除目录 # 异步 创建目录

  5. pytorch生成对抗示例

    pytorch生成对抗示例 本文对ML(机器学习)模型的安全漏洞的认识,并将深入了解对抗性机器学习的热门话题.图像添加难以察觉的扰动会导致模型性能大不相同.通过图像分类器上的示例探讨该主题.使用第一种 ...

  6. 在cuDNN中简化Tensor Ops

    在cuDNN中简化Tensor Ops 在Tesla V100 GPU中引入神经网络模型以来,神经网络模型已迅速利用NVIDIA Tensor Cores进行深度学习.例如,基于Tensor Core ...

  7. python+selenium基础篇,三种等待方式,显示、隐式、强制等待

    1.显示等待: from selenium import webdriver from time import sleep from selenium.webdriver.support.ui imp ...

  8. JVM_ 动态链接

    虚拟机栈: -> 栈帧---对应每个方法----> 包含: 局部变量表, 本地方法栈, 动态链接, 方法出口, 动态链接: 每个栈帧都保存了 一个 可以指向当前方法所在类的 运行时常量池, ...

  9. SpringBoot系列——admin服务监控

    前言 springboot项目部署起来后,如何实时监控项目的运行状况呢?本文记录使用springboot-admin对服务进行监控. springboot-admin介绍:https://codece ...

  10. conn / as sysdba连接不上

    问题: SQL> conn / as sysdbaERROR:ORA-09817: Write to audit file failed.Linux-x86_64 Error: 28: No s ...