一款开源、免费的 WPF 自定义控件集

前言

今天大姚给大家分享一款开源(MIT license)、免费的 WPF 自定义控件集,对于正在学习或开发 WPF 应用、希望深入了解自定义控件实现原理的同学来说,具有很高的参考和借鉴价值。

项目介绍

PropertyTools 是一款开源(MIT license)、免费的 WPF 自定义控件集,该控件集涵盖了 PropertyGrid、DataGrid、支持多选的 TreeView、ColorPicker 等常用控件。

支持的.NET版本

控件介绍

当然可以,以下是去掉"状态"列后的中文表格:

控件名称 描述
PropertyGrid(属性网格) 显示单个对象或一组对象的属性的控件。
DataGrid(数据表格) 具有"Excel 风格"的数据表格控件(注意:该控件未实现虚拟化)。
TreeListBox(树形列表框) 外观和行为类似 TreeView 的 ListBox,支持多选和拖放操作。
ColorPicker(颜色选择器) 用于选择颜色的控件。
RadioButtonList(单选按钮列表) 一组绑定到枚举(enum)的单选按钮。
EnumMenuItem(枚举菜单项) 一组可勾选的菜单项,绑定到枚举(enum)。
EditableTextBlock(可编辑文本块) 一种可在 TextBlock 和 TextBox 之间切换的控件,适用于在 TreeView 中进行就地编辑。
FilePicker(文件选择器) 带有"浏览文件"按钮的 TextBox。
DirectoryPicker(目录选择器) 带有"浏览文件夹"按钮的 TextBox。
DockPanelSplitter(停靠面板分割条) 用于 DockPanel 的分割条控件。
SpinControl(数值调节框) 带有上下箭头的数字输入控件(数值微调器)。
LinkBlock(超链接文本块) 在 TextBlock 上实现超链接功能的控件。
SliderEx(增强滑块) 一种 Slider,在拖动滑块时会调用 IEditableObject.BeginEdit/EndEdit 方法。
TextBlockEx(增强文本块) 支持禁用状态样式的 TextBlock。
PopupBox(弹出框) 重新样式化的 ComboBox,允许在弹出视图中放置任意内容。
FormattingTextBox(格式化文本框) 可绑定格式化字符串的 TextBox。

项目源代码

控件效果查看

设置ControlDemos为启动项目,运行查看效果:

项目源码地址

更多项目实用功能和特性欢迎前往项目开源地址查看👀,别忘了给项目一个Star支持💖。

优秀项目和框架精选

该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没🤞)。

相关推荐
starzy19902 分钟前
Scala Array操作:从定长数组到ArrayBuffer的完整指南
开发语言·后端·scala
IT_陈寒3 分钟前
Python项目实战经验分享:为什么你的多进程日志会丢失?
前端·人工智能·后端
中二少年学编程29 分钟前
Node版本管理使用手册
后端
modelmd31 分钟前
Go 切片、映射常见使用场景
开发语言·后端·golang
mldong1 小时前
工作流引擎的退回修改:金额从 6666 改成 666,重提还是回到退回它的那个人
后端·架构
陈随易1 小时前
一个网吧网管,做了个网页,卖了 5000 万
前端·后端·程序员
深蓝AI10 小时前
Python 3.13 的 Queue.shutdown:异步消费者终于能正常收工了
后端
武子康11 小时前
MultiNet6 空闲崩溃:`EXCVADDR=0x8` 后又出现 `CORRUPT HEAP`
人工智能·后端·agent
武子康12 小时前
MultiNet7 每轮都 clean,ESP32-P4 内存为什么还在掉?
人工智能·后端·agent