Csharp/C#教程:深入分析C#中WinForm控件之Dock顺序调整的详解分享

最近被.netwinform中的控件布局搞困惑了,由于控件都是使用Dock方式的,操作起来也是比较方便,如果最大化,窗口大小调整等,都可以随着窗口大小的变化而变化。
但问题是,.netwinform的dock方式是根据先添加的控件顺序进行优先级Dock排列的,假设我想目前有三个控件A、B、C分别以Top、Bottom以及Fill方式填充窗口即窗口看起来应该是这样的:
———————
A
———————
C
———————
———————-
问题来了,现在我想添加D控件在A及C中间怎么办?尝试了不少办法都不行,一般都会覆盖掉C控件的,也就是最后添加的控件。
在网上查找,很多人都提出一种无奈的解决方案,那就是重新来过,将控件再次添加到窗口form中,虽然可以解决Dock布局带来的困扰,但带来的是工作量的倍增同时很难调整到跟之前的布局一模一样。
想来这都不是解决的办法,添加添加,我一直想,对了先添加的控件具有Dock的优先排序权,应该可以从Designer文件中着手啊。
找到以下代码:
代码如下:
this.Controls.Add(this.D);
this.Controls.Add(this.C);
this.Controls.Add(this.B);
this.Controls.Add(this.A);

将代码的顺序调整为:
代码如下:
this.Controls.Add(this.C);
this.Controls.Add(this.D);
this.Controls.Add(this.B);
this.Controls.Add(this.A);

问题即解决了。
由此可见,在Desinger文件中是以后添加的控件为优先权高来Dock排序,即A控件的排序优先权最高。
您可能感兴趣的文章:.NetWInform开发笔记(三)谈谈自制控件(自定义控件)c#中多线程访问winform控件的若干问题小结WinForm子窗体访问父窗体控件的实现方法C#的winform控件命名规范WinForm自定义函数FindControl实现按名称查找控件简介Winform中创建用户控件WinForm实现移除控件某个事件的方法C#中让控件全屏显示的实现代码(WinForm)C#WinForm程序处理后台繁忙导致前台控件假死现象解决方法使用重绘项美化WinForm的控件

标签: orm rm oc

C语言内存对齐实例详解

C语言接口与实现方法实例详解

上述就是C#学习教程:深入分析C#中WinForm控件之Dock顺序调整的详解分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/904755.html

(0)
上一篇 2021年10月22日
下一篇 2021年10月22日

精彩推荐