# WenSkin **Repository Path**: lincsharp/WenSkin ## Basic Information - **Project Name**: WenSkin - **Description**: C# Winform开源控件,包含大部分原始控件重绘。一个基于.Net 开源的C/S控件库 - **Primary Language**: C# - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 37 - **Created**: 2022-12-16 - **Last Updated**: 2022-12-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # WenSkin #### 介绍 C# Winform开源控件,包含大部分原始控件重绘。一个基于.Net 开源的C/S控件库 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0623/115159_97a58afa_1149257.png "赞赏码.png") #### 软件架构 软件架构说明 #### 安装教程 1. 下载源码或者直接下载bin文件中的dll生成文件 QQ群聊【WenSkin交流群】:966149987 #### 使用说明 1. 控件大部分是基于原生控件绘制。很多代码都是基于Contro绘制。学习是很有帮助的 2. 部分代码来源于网络。 #### 图档介绍 1.重绘Datagridview ![输入图片说明](https://images.gitee.com/uploads/images/2020/0622/212239_b2930f8a_1149257.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2020/0622/212343_b11c13d2_1149257.gif "222.gif") datagridview 筛选 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0920/162330_7bcdbb24_1149257.gif "1.gif") 2.带Lable 按钮的输入框 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0622/212322_ecb04967_1149257.gif "111.gif") 3.GDI绘制的按钮 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0622/212618_c150c8a7_1149257.png "屏幕截图.png") 4.继承Control 绘制的按钮 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0622/212742_3171c203_1149257.png "屏幕截图.png") 5.原点进度条 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0622/212832_ff333b26_1149257.png "屏幕截图.png") 6.动态配置文件 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0622/234545_c73293c0_1149257.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2020/0623/105403_7783593e_1149257.png "屏幕截图.png") ``` //初始化 WenSkin.WenConfig wenConfig = new WenSkin.WenConfig(); WenSkin.WenConfig wenConfigjson = new WenSkin.WenConfig(WenSkin.WenConfig.ConfigFormatEnum.Json); //获取或设置值 var uid = wenConfig["SqlServer", "Uid"]; wenConfig["SqlServer", "Uid"] = "wen"; //显示窗口 wenConfig.Show(); ``` 自动配置文件,生成设置窗口,并支持xml和json格式,自动序列化 ![输入图片说明](https://images.gitee.com/uploads/images/2021/0627/122145_a005cb38_1149257.png "屏幕截图.png") 6.动态生成窗口,绑定datarow数据,并自动生成插入数据库语句和更新语句。 ``` private void wenImageButton1_Click(object sender, EventArgs e) { DataTable dt = new DataTable(); dt.Columns.Add("A"); dt.Columns.Add("B"); dt.Columns.Add("C"); dt.Rows.Add(001, "001", ""); dt.Rows.Add(002, "002", "001"); dt.Rows.Add(002, "001", ""); dt.Rows.Add(003, "004", "002"); dt.Rows.Add(004, "002", "001"); dt.Rows.Add(005, "002", "001"); wenDataTextBox1.DataSource = dt.Rows[1]; } private void wenButton2_Click(object sender, EventArgs e) { var insert = wenDataTextBox1.InsertSqlString; var update = wenDataTextBox1.UpdateSqlString; this.MsgBoxInformation($"{ insert}\r\n\r\n{update}"); } ``` ![输入图片说明](https://images.gitee.com/uploads/images/2020/0623/105815_771e0082_1149257.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2020/0623/110544_866718c9_1149257.png "屏幕截图.png") 7.log显示框 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0623/183821_6b3fbcb2_1149257.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2020/0623/183920_9cd5f355_1149257.png "屏幕截图.png") 8.分页控件自动分割DataTable 数据 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0626/213428_bd78ee0b_1149257.gif "111.gif") ![输入图片说明](https://images.gitee.com/uploads/images/2020/0622/212925_933d0a4b_1149257.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2020/0622/212946_bbd02da7_1149257.png "屏幕截图.png") 9.模板listbox 可以直接绑定模板的listbox ![输入图片说明](https://images.gitee.com/uploads/images/2020/0821/210349_f34a63da_1149257.gif "2.gif") ``` wenListBoxControl1.Template = typeof(WenGroupBox); wenListBoxControl1.Items.Add(new WenListBoxControl.WenListBoxControlItem()); wenListBoxControl1.Items.Add("测试"); wenListBoxControl1.Template = typeof(WenButton); wenListBoxControl1.Items.Add("测试按钮模板"); ``` 10.ini文件解析和自动设置功能 ![输入图片说明](https://images.gitee.com/uploads/images/2021/0602/110436_3f0e4538_1149257.png "屏幕截图.png") ``` WenSkin.Ini ini = new WenSkin.Ini("test.ini"); ini.IniFormShow(); ``` #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 码云特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)