# BHXJ.NetWinFormControl **Repository Path**: BHXJ/BHXJ.NetWinFormControl ## Basic Information - **Project Name**: BHXJ.NetWinFormControl - **Description**: 有尺寸适应能力的winform控件 - **Primary Language**: C# - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 1 - **Created**: 2019-12-03 - **Last Updated**: 2021-11-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # BHXJ.NetWinFormControl #### 介绍 有尺寸适应能力winform控件库 控件的位置、字体和尺寸随父控件的尺寸变化而变化。 变化原则为:以控件原始显示区域为基准,计算与原始区域形状相似,位置在父控件居中的最大显示区域。字体变化比例与新区域和原始区域尺寸比例相同。 .net已有非容器控件可以通过对IBHXJZOOM的继承和实现IBHXJZOOM接口(可以从其他控件复制,C#不支持类的多继承)和修改少量代码即可实现尺寸适应。 本人首次尝试做开源,有许多不足之处,欢迎指正。也希望和大家多多交流丰富项目内容。 #### 软件架构 IBHXJZOOM接口:有尺寸适应能力的控件都需要继承该接口,以实现各项功能 FORM文件夹:自定义FORM 继承System.Windows.Forms.Form NEW文件夹:自定义Control 继承System.Windows.Forms.Control OLD文件夹:改造原有控件,多数控件只是实现了自适应(继承和实现IBHXJZOOM接口和少量代码改造), 少数控件进行重绘改造。 #### 使用说明 该项目基于.net4.0实现,将项目加入工程并引用 父控件和各个子控件的 ZoomFlag ZoomFont ZoomSize ZoomLocation 属性按需求设置 效果如下(注意布局变化) ##### 常规 ![常规](./image/normal.png) ##### 缩小 ![缩小](./image/整体缩小.png) ##### 横向压缩 ![横向压缩](./image/横向缩小.png) ##### 纵向压缩 ![纵向压缩](./image/纵向缩小.png) #### 参与贡献 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/)