TableLayoutPanel 控件的最佳做法
TableLayoutPanel 控件提供强大的布局功能,在在 Windows 窗体上使用这些控件之前,应仔细加以考虑。
建议
以下建议将帮助你使用 TableLayoutPanel 控件来获得最佳优势。
目标用途
请谨慎使用 TableLayoutPanel 控件。 在涉及可调整大小布局的任何情况下,都不应使用它。 以下列表描述了最能从 TableLayoutPanel 控件中获益的布局:
布局中包含多个相互按比例调整大小的窗体部分。
将在运行时动态修改或生成的布局,例如基于首选项添加或减去用户可自定义字段的数据输入表单。
应保持整体固定大小的布局设计。 例如,你可能有一个对话框需要保持在小于 800 x 600 的尺寸,但同时又需要支持本地化字符串。
以下列表描述了无法从使用 TableLayoutPanel 控件中获益匪浅的布局:
简单的数据输入表单,包含一列标签和一列文本输入区域。
具有单个大型显示区域的窗体,应在发生调整大小时填充所有可用空间。 例如,显示单个 PropertyGrid 控件的表单。 在这种情况下,使用锚定,因为在调整窗体大小时,不应有其他内容扩展。
仔细选择哪些控件需要位于 TableLayoutPanel 控件中。 如果您有空间让文本通过定位增加 30%,请考虑仅使用 Anchor 属性。 如果可以估计布局所需的空间,则使用 Dock 和 Anchor 比估算剩余空间和 AutoSize 行为的详细信息要容易得多。
在使用 TableLayoutPanel 控件设计布局时,通常应尽可能保持设计的简单性。
使用“文档大纲”窗口
“文档大纲”窗口为您提供布局的树视图,您可以利用它来调整控件的 z 顺序以及父子关系。 从“视图”菜单中,选择 “其他窗口”,然后选择 “文档大纲”。
避免嵌套
避免在 TableLayoutPanel 控件中嵌套其他 TableLayoutPanel 控件。 调试嵌套布局可能很困难。
避免视觉继承
TableLayoutPanel 控件不支持 Visual Studio 中的 Windows 窗体设计器中的视觉继承。 派生类中的 TableLayoutPanel 控件在设计时显示为“锁定”。