一.前言

  这套UI库是上一个公司(好几年前了)完成的。当时主要为开发公司内部ERP系统,重新设计实现了所有用到的Winform组建,包括Form窗体组建6个(支持换肤),基础控件25个。其中有很多参考借鉴其他开源组件,也有几个是集成的别人的组件,然后做了些调整。

  现在已经好几年不做Winform开发了,整理一下共享出来,希望能够给需要的朋友一些帮助。在Win8、win10上运行是没有什么大的问题的,好像有写重绘的小bug,应该是个很容易解决的问题,没有继续深究它了。

Github项目地址https://github.com/kwonganding/winform.controls

二.Form窗体组件

2.1 BaseForm基础窗体控件,窗体是完全重新绘制 的,扩展性也不错。所有其他窗体Form组建都是继承该组件的。效果图:

2.2 显示错误异常消息的窗体 ErrorBox,主要是在全局扑获异常显示错误消息用的,效果图:

2.3 PopBox,类似QQ弹窗类的右下角弹出窗体,可以自定义内容,效果图:

2.4 等待窗体,用户执行等待耗时操作显示的窗体,在BaseForm上实现了调用接口,使用非常简单,实例代码:

  1. private void txButton7_Click(object sender, EventArgs e)
  2. {
  3. this.Waiting(() =>
  4. {
  5. System.Threading.Thread.Sleep(12000);
  6. });
  7. }

效果图(实际图片为gif动态图,此处为静态截图):

2.5 MessageBox ,包括消息提示、警告提示、错误提示、询问提示,也是在BaseFrom中提供了接口,使用很简单

  1. private void txButton3_Click(object sender, EventArgs e)
  2. {
  3. this.Info("提示消息!");
  4. }
  5.  
  6. private void txButton5_Click(object sender, EventArgs e)
  7. {
  8. this.Warning("客官,请自重!");
  9. }
  10.  
  11. private void txButton6_Click(object sender, EventArgs e)
  12. {
  13. this.Error("出错了!");
  14. }
  15.  
  16. private void txButton8_Click(object sender, EventArgs e)
  17. {
  18. this.Question("你确定要退出吗?");
  19. }

效果图:

2.6 主窗体,主窗体主要多了两个东西:a)类似Office2007的水晶Logo按钮,b)换肤控件,效果图:

三.基础控件

3.1 Docking组件, 就是用于dock布局的控件,来自网络开源组件,具体可以查看源码。就是winform下著名的开源控件:WeifenLuo.WinFormsUI.Docking。关于使用可以自行搜索,网上很多的。

3.2 TXTreeComboBox,树形下拉选择控件,选择框中默认显示选中节点及其父节点的全路径值,如下图,绑定代码:

  1. this.txTreeComboBox1.DataSource = TestData.GetTreeData(10);
  2. this.txTreeComboBox1.MultiLevelDataSourceMember = "Users";
  3. this.txTreeComboBox1.DisplayMember = "Name";
  4. this.txTreeComboBox1.ValueMember = "Value";
  5. this.txTreeComboBox1.BindData();

3.3 MultiselectComboBox 下拉多选控件,效果图:

3.4 TemplateListView 列表数据呈现控件,功能很强大的,这个原本是另一个同事做的,在其基础上封装的。效果预览:

可视化列字段绑定方式:

3.5 TreeListView 树形列表

3.6 ThumbnialView 缩略图列表控件

3.7 TXButton一般按钮,主要是重绘了按钮的外观,可以设置圆角、图标等

3.8 TXCheckBox 复选框

3.9 TXComboBox 下拉选择框

3.10 TXDateTimePicker 日期选择控件,在Win10下好像有显示的小bug

3.11 TXGroupBox 重绘了原来的GroupBox,有更多的显示控制,支持QQ的一个分组效果,下图

3.12 TXHtmlEditor HTML编辑器,这个组建来自网络,在其基础上完善、添加了一些功能,如HTML源码编辑、效果预览,图片上传等。

3.13 TXListView 列表组建,继承自ListView,主要是外观的扩展重绘。3.4TemplateListView,3.5TreeListView都是继承自 TXListView组件。

3.14 MonthCalendar日历控件,这个好像也是来自网络,可以基于日历实现更丰富的功能,在当时项目中是实现了一个每天房价、活动呈现操作等需求。

3.15 TXPager分页控件,与列表配合使用

3.16 TXPander、TXPanderPanelList这个是类似outlook风格的可收缩、布局的容器控件,主要来自网络。

3.17 TXPanel可以收缩、关闭,包含标题的Panel控件

3.18 TXRadioButton 单选控件

3.19 TXRangeValue 多范围设置组件,这是属于业务组件。

3.20 TXTabControl继承自微软 TabControl,主要是做了UI的美化重绘,可以设置各种样式、颜色

3.21 TXTableLayoutPanel,这个是Winform中比较常用的布局控件,继承自微软的TableLayoutPanel,主要是解决了滚动条的显示问题

3.22 TXTextBox,文本输入框

3.23 TXToolBar工具栏

3.24 TXToolStrip状态栏

3.25 菜单

四 下载路径:

文件压缩后21Mb,超过了博客园上传文件大小(10MB)因此就传到了csdn(不要积分) http://download.csdn.net/detail/an_ding/8981365

百度云下载链接 http://pan.baidu.com/s/1kT5sLr5

Github项目地址https://github.com/kwonganding/winform.controls

版权所有,文章来源:http://www.cnblogs.com/anding/p/4715440.html

Winform开发全套31个UI组件开源共享的更多相关文章

  1. 第31讲 UI组件之 Gallery画廊控件

    第31讲 UI组件之 Gallery画廊控件 1.Gallery的简介 Gallery(画廊)是一个锁定中心条目并且拥有水平滚动列表的视图,一般用来浏览图片,并且可以响应事件显示信息.Gallery只 ...

  2. react_app 项目开发 (4)_ React UI 组件库 ant-design 的基本使用

    最流行的开源 React UI 组件库 material-ui 国外流行(安卓手机的界面效果)文档 ant-design 国内流行 (蚂蚁金服 设计,一套 PC.一套移动端的____下拉菜单.分页.. ...

  3. Android开发10.1:UI组件适配器AdapterView(创建ListView,Adapter接口)

    @version:Android4.3 API18 @author:liuxinming 概述               AdapterView继承了ViewGroup,它的本质是容器       ...

  4. Android开发10.3:UI组件GridView网格视图

    GridView(网格视图) 概述 GridView用于在界面上按行.列分布的方式来显示多个组件         GridView和ListView有共同的父类 : AbsListView       ...

  5. Android开发10.2:UI组件AutoCompleteTextView(自动完成文本框)

    概述 AutoCompleteTextVeiw(自动完成文本框)从 EditText派生而出  PS :EditText用法介绍           当用户输入一定字符后,自动完成自动完成文本框会显示 ...

  6. vux 是基于 WeUI 和Vue(2.x)开发的移动端UI组件库,主要服务于微信页面。

    https://doc.vux.li/zh-CN/ https://vux.li/

  7. 16款优秀的Vue UI组件库推荐

    16款优秀的Vue UI组件库推荐 Vue 是一个轻巧.高性能.可组件化的MVVM库,API简洁明了,上手快.从Vue推出以来,得到众多Web开发者的认可.在公司的Web前端项目开发中,多个项目采用基 ...

  8. [转载]前端——实用UI组件库

    https://www.cnblogs.com/xuepei/p/7920888.html Angular UI 组件 ngx-bootstrap 是一套Bootstrap 组件 官网:https:/ ...

  9. 强烈推荐优秀的Vue UI组件库

    Vue 是一个轻巧.高性能.可组件化的MVVM库,API简洁明了,上手快.从Vue推出以来,得到众多Web开发者的认可.在公司的Web前端项目开发中,多个项目采用基于Vue的UI组件框架开发,并投入正 ...

随机推荐

  1. Visual Studio Code 学习.net core初体验

    一,安装 最近在用 Visual Studio Code 学习.net core ,记录下学习的过程,首先去官网下载最新的.net core2.1安装包,有windows 和mac,根据自己的开发环境 ...

  2. SQL处理数据并发,解决ID自增

    1 创建MaxIdProcess表,由于存储ID的最大值 CREATE TABLE [dbo].[MaxIdProcess]( ,) NOT NULL, --自增ID ) NOT NULL, --存储 ...

  3. KEUC首次落地中国,网易云深度剖析Kubernetes优化与实践

    本文由  网易云发布. 10 月 15 日,聚焦 Kubernetes 中国行业应用与技术落地的首届中国 Kubernetes 用户大会(KEUC)在杭州成功举办.本次大会吸引了来自全球各地的技术精英 ...

  4. windows下redis安装及应用

    一.下载安装Redis(windows版本) 1.下载地址:https://github.com/MicrosoftArchive/redis/releases 2.安装: 1)打开运行窗口,输出cm ...

  5. 对于equals和==的理解

    很多时候equals和==大家都分不太清楚怎么样来使用,今天小编就来教大家怎么使用 equals比较的是两个变量的值是否相等 而==则比较的是这个变量的内存地址是否相同 打个比方来说 String a ...

  6. celery_消息队列

    http://www.cnblogs.com/wupeiqi/articles/8796552.html 一. celery 简介 Celery 是一个专注于实时处理和任务调度的分布式任务队列, 同时 ...

  7. 字符串(tjoi2016,heoi2016,bzoj4556)(sam(后缀自动机)+线段树合并+倍增+二分答案)

    佳媛姐姐过生日的时候,她的小伙伴从某东上买了一个生日礼物.生日礼物放在一个神奇的箱子中.箱子外边写了 一个长为\(n\)的字符串\(s\),和\(m\)个问题.佳媛姐姐必须正确回答这\(m\)个问题, ...

  8. MySQL(外键变种)

    day58 外键的变种                  a. 用户表和部门表                      用户:        不唯一                1 alex    ...

  9. linux中 ll 和ls 区别

    ll 列出来的结果详细,有时间,是否可读写等信息 ,象windows里的 详细信息ls 只列出文件名或目录名 就象windows里的  列表 ll -t 是降序,  ll -t | tac 是升序 l ...

  10. CSS3盒子模型(下)

    绝对定位的盒子水平/垂直居中 普通的盒子是左右margin 改为 auto就可, 但是对于绝对定位就无效了 定位的盒子也可以水平或者垂直居中,有一个算法. 首先left 50% 父盒子的一半大小 然后 ...