TableLayoutPanel 控件的最佳做法

TableLayoutPanel 控件提供强大的布局功能,在在 Windows 窗体上使用这些控件之前,应仔细加以考虑。

建议

以下建议将帮助你使用 TableLayoutPanel 控件来获得最佳优势。

目标用途

请谨慎使用 TableLayoutPanel 控件。 在涉及可调整大小布局的任何情况下,都不应使用它。 以下列表描述了最能从 TableLayoutPanel 控件中获益的布局:

  • 布局中包含多个相互按比例调整大小的窗体部分。

  • 将在运行时动态修改或生成的布局,例如基于首选项添加或减去用户可自定义字段的数据输入表单。

  • 应保持整体固定大小的布局设计。 例如,你可能有一个对话框需要保持在小于 800 x 600 的尺寸,但同时又需要支持本地化字符串。

以下列表描述了无法从使用 TableLayoutPanel 控件中获益匪浅的布局:

  • 简单的数据输入表单,包含一列标签和一列文本输入区域。

  • 具有单个大型显示区域的窗体,应在发生调整大小时填充所有可用空间。 例如,显示单个 PropertyGrid 控件的表单。 在这种情况下,使用锚定,因为在调整窗体大小时,不应有其他内容扩展。

仔细选择哪些控件需要位于 TableLayoutPanel 控件中。 如果您有空间让文本通过定位增加 30%,请考虑仅使用 Anchor 属性。 如果可以估计布局所需的空间,则使用 DockAnchor 比估算剩余空间和 AutoSize 行为的详细信息要容易得多。

在使用 TableLayoutPanel 控件设计布局时,通常应尽可能保持设计的简单性。

使用“文档大纲”窗口

“文档大纲”窗口为您提供布局的树视图,您可以利用它来调整控件的 z 顺序以及父子关系。 从“视图”菜单中,选择 “其他窗口”,然后选择 “文档大纲”

避免嵌套

避免在 TableLayoutPanel 控件中嵌套其他 TableLayoutPanel 控件。 调试嵌套布局可能很困难。

避免视觉继承

TableLayoutPanel 控件不支持 Visual Studio 中的 Windows 窗体设计器中的视觉继承。 派生类中的 TableLayoutPanel 控件在设计时显示为“锁定”。

另请参阅