如何使用 Dock Fill VB.NET 使父对象居中

Posted

技术标签:

【中文标题】如何使用 Dock Fill VB.NET 使父对象居中【英文标题】:How to center objects in parent with Dock Fill VB.NET 【发布时间】:2015-12-28 03:12:13 【问题描述】:

我正在尝试使 RichTextBox 具有固定大小和灵活的空白空间(如 Word、写字板),我做了这个:

Dock 设置为FillMaximumSize 设置为600,0(0 是大小的通配符)(宽度=600 和高度=0 - 通配符)

我明白了:空格是灵活的,RichTextBox 的大小是固定的,但是 RichTextBox 没有位于中心。

我有一些选择:

将填充设置为自动(我想这是不可能的) 将边距设置为自动(我想这是不可能的,并且边距在 winforms 中不起作用)

如何将 RichTextBox 定位到中心?

【问题讨论】:

改用 Anchor 属性,打开 Right 和 Bottom 锚点。并非所有可以想象的布局安排都适用于内置布局控件属性或 TableLayoutPanel 和 FlowLayoutPanel 控件,一旦需要代码就很棘手。使用表单的 Resize 事件将其放置在您想要的位置。 【参考方案1】:

使用anchor 代替dock

Dock 是为 Size 设计的,Anchor 是为 Location 而设计的

您的问题是基于位置的,请将您的框定位到中心而不是设置Dock 边距。

【讨论】:

以上是关于如何使用 Dock Fill VB.NET 使父对象居中的主要内容,如果未能解决你的问题,请参考以下文章

如何在不将Dock设置为Fill的情况下将Label置于Panel内部

如何从 VB.NET 的视图中获取 SQL 查询

Qt小部件/布局的WinForm“Dock Fill”等效?

来自数据集的 Vb.Net 水晶报告

ListBox Dock Fill 总是有空隙的问题

Panel.Dock 填充忽略其他 Panel.Dock 设置