本文主要是介绍C#界面动态布局 界面控件随着界面大小尺寸变化而变化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
要想写一个漂亮的界面,光靠利用Anchor和Dock属性是远远不够的,我们需要用到相对布局,就是不管窗口大小怎么变化,控件相对父控件的相对位置保持不变。可惜c#里没有提供按照百分比布局。所以只能自己再resize()事件里调整控件位置。
首先在窗体的构造函数里保存父窗体的长宽,以及每个控件的X,Y坐标的相对位置:
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.Locatio
这篇关于C#界面动态布局 界面控件随着界面大小尺寸变化而变化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!