Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Winform 后台将指定的控件集合添加到制定容器中

Winform 后台将指定的控件集合添加到制定容器中

作者头像
FreeTimeWorker
发布于 2020-08-31 05:35:40
发布于 2020-08-31 05:35:40
2.3K00
代码可运行
举报
文章被收录于专栏:C#开发点点滴滴C#开发点点滴滴
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1          /// <summary>
 2         /// 把按钮按照行数分割排列
 3         /// </summary>
 4         /// <param name="ControlArry">按钮集合</param>
 5         /// <param name="control_parent">父容器</param>
 6         /// <param name="RowCount">每一行数量</param>
 7         /// <param name="ControlSize">控件大小</param>
 8         /// <param name="pad">间隔大小</param>
 9         private void ControlToControlResize(Control[] ControlArry, Control control_parent, int RowCount, Size? ControlSize, Padding pad)
10         {
11             //计算按钮相关信息
12             control_parent.Controls.Clear();
13             //列数
14             int yCount = 0; int xCount = RowCount;
15             if (ControlArry.Length < RowCount) //定义一列展示的数量大于总控件
16             {
17                 yCount = 1;
18             }
19             else
20             {
21                 yCount = ControlArry.Length % RowCount == 0 ? ControlArry.Length / RowCount : ControlArry.Length / RowCount + 1;
22             }
23             Padding ParentsPadding = control_parent.Padding;
24             Size btnSize = new System.Drawing.Size();
25             if (ControlSize != null)
26             {
27                 btnSize = (Size)ControlSize;
28             }
29             else
30             {
31                 btnSize.Width = Convert.ToInt32(Math.Floor(((double)control_parent.Width - (ParentsPadding.Left + ParentsPadding.Right)) / RowCount));
32                 btnSize.Height = Convert.ToInt32(Math.Floor(((double)control_parent.Height - (ParentsPadding.Top + ParentsPadding.Bottom)) / yCount));
33             }
34             int index = 0;
35             for (int i = 0; i < yCount; i++)//行数
36             {
37                 for (int j = 0; j < xCount; j++)//一行多少个
38                 {
39                     if (index >= ControlArry.Length)
40                     {
41                         break;
42                     }
43                     else
44                     {
45                         ControlArry[index].Size = btnSize;
46                         ControlArry[index].Padding = pad;
47                        ControlArry[index].Location = new Point(j * btnSize.Width + ParentsPadding.Left, i * btnSize.Height + ParentsPadding.Top);
48                         index++;
49                     }
50                 }
51             }
52             control_parent.Controls.AddRange(ControlArry);
53         }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-01-27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
(三十三)c#Winform自定义控件-日期控件
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/11
4.9K0
(三十三)c#Winform自定义控件-日期控件
【C#】分享一个可携带附加消息的增强消息框MessageBoxEx
--------------201806111122更新---------------
AhDung
2018/09/13
2K0
【C#】分享一个可携带附加消息的增强消息框MessageBoxEx
c# 动态生成控件
今天这个主题主要也是群里小伙伴提到的一个问题,就是如何动态的生成控件,他是想自动生成一级二级菜单这样,我这里主要是动态生成的picturebox,希望能给他起到借鉴的作用,然后举一反三完成自己的项目!
zls365
2020/08/19
1.4K0
c# 动态生成控件
(四十七)c#Winform自定义控件-树表格(treeGrid)
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/09
1.4K0
(四十七)c#Winform自定义控件-树表格(treeGrid)
(三十二)c#Winform自定义控件-表格
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/11
2.1K0
(三十二)c#Winform自定义控件-表格
WinForm中的简单打印
最近工作很是郁闷,有做WEB又要改桌面程序,要求之前基于DevExpress报表打印改成 DataGridView呈现数据 ,配置30分钟提醒用户打印,我发现我是越来越懒了,主要是情绪不好,什么问题 第一反应肯定谷歌之然后自己封装下,无暇思考,万能的谷歌啊
跟着阿笨一起玩NET
2018/09/20
1.5K0
(六十五)c#Winform自定义控件-思维导图/组织架构图(工业)
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/29
2.2K0
(六十五)c#Winform自定义控件-思维导图/组织架构图(工业)
ASP.NET画直方图
大家好,又见面了,我是你们的朋友全栈君。 最近做直方图,找到了这篇文章,以此为例画一般的直方图可以实现了。
全栈程序员站长
2022/09/18
2780
(四十三)c#Winform自定义控件-Listview
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/09
1.5K0
(四十三)c#Winform自定义控件-Listview
(十二)c#Winform自定义控件-分页控件
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/11
3.2K0
(十二)c#Winform自定义控件-分页控件
(四十九)c#Winform自定义控件-下拉框(表格)
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/09
1.7K0
(四十九)c#Winform自定义控件-下拉框(表格)
(十八)c#Winform自定义控件-提示框
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/11
1.2K0
(十八)c#Winform自定义控件-提示框
(十五)c#Winform自定义控件-键盘(二)
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/11
2.3K0
(十五)c#Winform自定义控件-键盘(二)
asp.net动态增加服务器端控件并提交表单
为什么要用原生的呢? 1、目的 原生出现浏览器兼容性问题 极少,不用测试多浏览兼容性 。需要考虑到市面上的其他垃圾浏览器。  2、性能不好 如果不考虑第一条 你可以换一种方式 直接上代码 .aspx页面 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"
纯粹是糖
2018/03/14
1.5K0
asp.net动态增加服务器端控件并提交表单
(八十)c#Winform自定义控件-分割线标签
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/10/09
1K0
(八十)c#Winform自定义控件-分割线标签
(七十九)c#Winform自定义控件-导航菜单
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/10/09
1.3K0
(七十九)c#Winform自定义控件-导航菜单
(六十九)c#Winform自定义控件-垂直滚动条
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/29
1.8K0
(六十九)c#Winform自定义控件-垂直滚动条
(十三)c#Winform自定义控件-导航菜单
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/11
4.7K0
(十三)c#Winform自定义控件-导航菜单
(五十二)c#Winform自定义控件-LED数字
GitHub:https://github.com/kwwwvagaa/NetWinformControl
冰封一夏
2019/09/09
1.6K0
[C#]控件大小随窗体改变而改变
这篇文章写的很好,一般我会选择第一种。 我改了一下格式,便于大家复制黏贴,O(∩_∩)O。
祥知道
2020/03/10
3K0
相关推荐
(三十三)c#Winform自定义控件-日期控件
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文