初始化时:
InitializeComponent();
int count = this.Controls.Count * 2 + 2;
float[] factor = new float[count];
int i = 0;
factor[i++] = Size.Width;
factor[i++] = Size.Height;
foreach (Control ctrl in this.Controls)
{
factor[i++] = ctrl.Location.X / (float)Size.Width;
factor[i++] = ctrl.Location.Y / (float)Size.Height;
ctrl.Tag = ctrl.Size;
}
Tag = factor;
resize事件:
float[] scale = (float[])Tag;
int i = 2;
foreach (Control ctrl in this.Controls)
{
ctrl.Left = (int)(Size.Width * scale[i++]);
ctrl.Top = (int)(Size.Height * scale[i++]);
ctrl.Width = (int)(Size.Width / (float)scale[0] * ((Size)ctrl.Tag).Width);
ctrl.Height = (int)(Size.Height / (float)scale[1] * ((Size)ctrl.Tag).Height);
}
说明:百度知道离回答http://zhidao.baidu.com/question/421384385.html里有,不过没说清楚,不要说要用anchor和DOCK方法,不行。
不是groupbox不能调整大小,是里面的控件
追答那我知道了,你在循环的时候也将groupBox1.Controls中的控件循环一边,不能只循环this中的控件。
追问你知道,我不知道有毛用。你会倒也是给出具体解决方法啊
自动调整时,groupbox会随着变化,而里面的控件大小却不变
C#,实现窗口大小改变时窗口内的控件自动调整位置和大小时,groupbox内...
用递归,你的foreach 只遍历到GroupBox控件,没有遍历到Groupbox里面的控件
C#控件的位置和大小随窗体大小的变化而变化
Anchor属性为None则该控件的位置一直处于窗体的相对位置上 也可以使用FlowLayoutPanel控件规划Form的控件位置。 本回答由电脑网络分类达人 刘杰推荐 举报| 答案纠错 | 评论 16 1 njgcwjr 采纳率:58% 擅长: 办公软件 C#\/.NET 数据库DB 其他回答 窗体程序只能手动的在formsizechanged响应里通过代码调整窗体大小改变时...
c# 问题,最大化窗口时如何使里面的控件根据比例同样放大,相对位置也不...
Anchor属性可以设跟随着窗口的大小变化而变化。还有一个Dock属性 这两个属性应该可以满足你要的效果 详细可以Hi聊
C#datagridview边框随着窗体的改变而改变?我的这个程序,默认大小正好...
选中datagridview 然后点击属性 选择里面的Anchor属性 然后去设置你要改变的位置 选中哪个方向 控件就会在窗体发生改变的时候自动往那边填充。
C#程序:实现窗体和控件的自由缩放的代码或属性
这个简单:首先点击你窗体中的控件,看属性栏找布局里的Anchor 改属性:Top,Bottom变成 Top,Bottom,Left,Right。
c#中窗体中的控件如何随窗体大小变化
可以通过控件的Anchor属性来设置你想要的控件随窗体变化时的大小布局变化。resize事件是在调整大小时发生也就是先触发这个事件,然后才改变大小;sizechanged事件则是当大小已经改变后才触发的。有关的事件发生情况,在MSDN里各个事件中都有说明的,你也可以做一个例子,设置好事件,然后通过加断点调试的方式来...
C#中怎么使控件随着窗体的大小改变而改变
强烈建议 将Form的FormBorderStyle属性由Sizeable修改为Fix开头的 因为一个登录窗体改变大小是没有意义的 下面回答下你的问题 图片和字一起 那么把他们放到panel里面就没你这样的问题了 能改变大小的窗体控件摆放很是费劲, 常用方法就那几个:Panel里放控件、anchor属性修改 minsize maxsize属性控制 ...
C#中控件怎么按窗口比例改变大小
Dock 只有选择Fill的时候才会按照窗口改变大小,其他只是改变位置 如果你是想让Listview等随着窗口自动调整大小,那确实可以使用DOCK属性 具体做法是如果整个窗口只有一个Listview控件,那么你可以直接选择DOCK的属性为Fill,如果你有好多控件,那么建议先使用SplitContainer,然后把ListView置于其中一个Paint中,然后...
c# winform问题,最大化窗口时如何使里面的控件根据比例同样放大,相对...
在窗体的Resize事件里添加代码,\\x0d\\x0a如下:\\x0d\\x0a此处以splitContainer控件为例,你可以换成任意你需要设置的控件名称\\x0d\\x0aprivate void Form1_Resize(object sender, EventArgs e)\\x0d\\x0a {\\x0d\\x0a splitContainer1.Top = Height \/ 3;\/\/控件距离界面上边缘始终为界面...
C#(vs2008)中如何实现控件随对话框大小变化而自动调整大小和位置
每个空间都有个Anchor的属性,这个属性控制控件与容器边框距离绑定的。。设置他可以使调整对话框大小时候,控件自动调整大小和位置。。