前言

推荐一款界面美观、功能齐全的 WPF 自定义控件资源库。这款资源库通过封装一系列常用的控件,简化开发流程,加快项目交付速度。

控件介绍

资源库封装了一些常用的控件,将其整合到一个自定义的控件库中,目的是为了方便快速开发。

通过使用这些预封装的控件,可以节省大量时间和精力,专注于核心业务逻辑的实现。

控件实现功能

1、基本实现常用基础控件

资源库中包含了多种常用的基础控件,如按钮、文本框、列表框等,这些控件经过精心设计和优化,能够满足常规软件开发的大部分需求。

2、满足常规软件快速开发

通过集成这些基础控件,开发者可以快速搭建用户界面,减少重复编码的工作量,从而显著提升开发效率。

支持框架

通过支持多个.NET 框架,资源库能够适应不同的开发环境和项目需求,确保在各种情况下都能稳定运行。

  • .NET Framework 4.5+
  • .NET Core 3.0+
  • .NET 5/6/7
  • C# 9.0/VS 2022

控件使用

Nuget包添加,具体如下图所示:

目前大部分功能采用注入 (Add) 和配置 (Use) 的方式添加。

Add

系统提供默认方法,例如 services.AddMessageDialog()。

如果你不想使用系统默认的对话框,可以通过注册方法重新注册接口,例如:

services.AddSingleton<IMessageDialog, MessageDialog>();

其中 MessageDialog 是自己实现的对话框。其他功能的思想类似。

Use

配置使用方法,例如 UseStart(l => l.Title = "HeBianGu"),用于自定义要显示的内容。通过这种方式配置的信息会保存在主窗口右上角的设置按钮页面中,可以自定义配置并序列化保存在本地。

控件效果

1、整体概况

按钮控件、文本输入框控件、下拉列表控件、数字控件、日期选择控件、支持绑定的密码框控件、进度条控件、拖动控件、树形控件、分页控件以及其他自定义控件。以上控件均已实现主题颜色、字体大小切换等,可以满足常用软件的功能。

2、控件主页

整体主窗口采用ViewBox方式加载,当缩放窗口或应用到到其他分辨率设备都会兼容。

3、主题设置

主题颜色主要用来标识要突出显示的部分,目前可以选择内置颜色、可以选择跟随系统主题颜色、可以自定义选择颜色、可以使用动态主题(即设置主题每隔指定时间自动变化)。

4、消息列表

目前有两种模式,分别是在窗口内显示和Window系统中显示,可以根据需求自定义显示方式。

5、在线升级

6、导航菜单示

7、数据表格

控件案例

项目地址

GitHub:https://github.com/HeBianGu/WPF-ControlBase

Gitee:https://github.com/HeBianGu/WPF-ControlBase

官方文档

推荐学习官方文档,获取详细的 API 说明和使用示例:

https://learn.microsoft.com/zh-cn/dotnet/api/system.windows.controls

在线源码

推荐查看在线源码,以便深入了解控件的实现细节:

https://referencesource.microsoft.com/

总结

希望这款界面美观、功能齐全的 WPF 自定义控件资源库 能够帮助大家提高开发效率,简化开发流程。更多实用功能和特性,请访问资源库的项目地址。

通过本文希望能为大家在 WPF 控件开发方面提供有价值的参考。欢迎在评论区留言交流,分享您的宝贵经验和建议。

最后

如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。

也可以加入微信公众号[DotNet技术匠] 社区,与其他热爱技术的同行一起交流心得,共同成长!优秀是一种习惯,欢迎大家留言学习!

功能齐全的 WPF 自定义控件资源库(收藏版)的更多相关文章

  1. WPF自定义控件之图片控件 AsyncImage

    AsyncImage 是一个封装完善,使用简便,功能齐全的WPF图片控件,比直接使用Image相对来说更加方便,但它的内部仍然使用Image承载图像,只不过在其基础上进行了一次完善成熟的封装 Asyn ...

  2. WPF自定义控件与样式(3)-TextBox & RichTextBox & PasswordBox样式、水印、Label标签、功能扩展

    一.前言.预览 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要是对文本 ...

  3. 【转】WPF自定义控件与样式(3)-TextBox & RichTextBox & PasswordBox样式、水印、Label标签、功能扩展

    一.前言.预览 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等. 本文主要是对文本输入控件进行样式开发,及相关扩展功能开发,主要内容包括: 基本文 ...

  4. WPF自定义控件与样式(1)-矢量字体图标(iconfont)

    一.图标字体 图标字体在网页开发上运用非常广泛,具体可以网络搜索了解,网页上的运用有很多例子,如Bootstrap.但在C/S程序中使用还不多,字体图标其实就是把矢量图形打包到字体文件里,就像使用一般 ...

  5. WPF自定义控件与样式(2)-自定义按钮FButton

    一.前言.效果图 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 还是先看看效果 ...

  6. WPF自定义控件与样式(15)-终结篇 & 系列文章索引 & 源码共享

    系列文章目录  WPF自定义控件与样式(1)-矢量字体图标(iconfont) WPF自定义控件与样式(2)-自定义按钮FButton WPF自定义控件与样式(3)-TextBox & Ric ...

  7. WPF自定义控件与样式(4)-CheckBox/RadioButton自定义样式

    一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: Che ...

  8. WPF自定义控件与样式(5)-Calendar/DatePicker日期控件自定义样式及扩展

    一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: 日历控 ...

  9. WPF自定义控件与样式(6)-ScrollViewer与ListBox自定义样式

    一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: Scr ...

  10. WPF自定义控件与样式(7)-列表控件DataGrid与ListView自定义样式

    一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: Dat ...

随机推荐

  1. Java并发之原子变量及CAS算法-下篇

    Java并发之原子变量及CAS算法-下篇 概述 本文主要讲在Java并发编程的时候,如果保证变量的原子性,在JDK提供的类中是怎么保证变量原子性的呢?.对应Java中的包是:java.util.con ...

  2. idea运行java项目main方法报build failure错误的解决方法

    当在使用 IntelliJ IDEA 运行 Java 项目的 main 方法时遇到 "Build Failure" 错误,这通常意味着在项目的构建过程中遇到了问题.解决这类问题通常 ...

  3. IDEA更改远程git仓库地址

    前言 我们在使用IDEA开发时,一般会配置好对应的git仓库,这样就比较容易对代码进行控制以及协同开发.   但有时候,我们远程的仓库地址由于这样那样的原因,需要迁移(这在爱折腾的企业是常有的事情). ...

  4. laravel框架中上传图片,并在本地显示

    1 //处理文件上传 2 if ($request->hasFile('image')&&$request->file('image')->isValid()){ 3 ...

  5. WebGL学习笔记

    完整 demo 和 lib 文件可以在 https://github.com/tengge1/webgl-guide-code 中找到. 第 2 章 WebGL 入门 第一个 WebGL 程序 fun ...

  6. Blazor 子组件与父组件通过 ChildEvents 传递数据的方法

    想要实现 Blazor 子组件向父组件传递数据, 参考 痴者工良的博文所描述的方式, .Net 5.0 下编译未能通过, 于是先修改一下, 简化为光触发事件通知而不传值 子组件 Child.razor ...

  7. 深入解析Spring AI框架:在Java应用中实现智能化交互的关键

    今天我们的Spring AI源码分析主题即将结束.我已经对自己感兴趣的基本内容进行了全面的审视,并将这些分析分享给大家.如果你对这个主题感兴趣,可以阅读以下几篇文章.每篇文章都层层递进,深入探讨相关内 ...

  8. Nacos2.3.2在ubuntu中的部署

    Nacos2.3.2 在ubuntu下的部署 下载地址 发布历史 | Nacos 官网 https://download.nacos.io/nacos-server/nacos-server-2.3. ...

  9. 云原生周刊:Karmada 成为 CNCF 孵化项目 | 2023.12.25

    开源项目推荐 kubernetes-reflector Reflector 是一个 Kubernetes 的插件,旨在监视资源(secrets 和 configmaps)的变化,并将这些变化反映到同一 ...

  10. 题解:P9784 [ROIR 2020 Day1] 超速

    传送门 洛谷题解 思路 我们设 \(T\) 为所花的总时间,\(d\) 为超速多少. 然后不难知道 $ T = \sum_{i = 1}^{n} \frac{l_i}{v_i+d}$,所以我们实际上是 ...