Winfrom组件Dock=Fill时掩盖或被覆盖的处理方案
原创问题描述
今天在Winfrom我的控制设置遇到问题。Dock为Fill始终由以下控件覆盖。

灰色的是A控件,下面的按钮是B控件,A控件的Dock设置为Fill,B控件的Dock设置为Bottom从图中可以看出,B控件把A控件覆盖了它的一部分。我想要的效果是,这两个控件不应相邻覆盖。
原因分析:
这是控件的插入顺序,也就是说,你的A控件被B控制范围,即B控件比A控件首先添加到此窗体。
解决方案:
第一种是我经常使用的方法,也是最方便也是唯一必要的。CtrlC、CtrlV没关系。
- 首先找到你的表格,下面有一张。Designer.cs( 表单设计器生成的代码文件。 )

 - 进到Designer.cs搜索文件后 this.Controls.Add 

这里把this.Controls.Add(this.A);放到this.Controls.Add(this.B);以上可以解决问题,直接看到效果。

这是我想要的最终效果。另一种愚蠢的方法是删除控件并按顺序重新创建它们。这更麻烦。如果有更多控件,重置各种属性也是浪费时间。 
版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除
itfan123





