将用户控件放入组框中

Placing a User Control into a groupbox

我试图搜索这个问题,但我看到的大多数问题都与如何将用户控件放入 winforms 的组框中有关。我有一个稍微不同的问题。

我有一个包含组合框和组框的表单。我有一系列用户控件,我想根据组合框的选择将它们换入和换出组框。这一切都很好。

我 运行 遇到的问题是它似乎将用户控件放置在组框的左上角。这会遮盖分组框本身的边框和任何文本。我已经尝试更改组框中的填充以及用户控件上的边距,但似乎没有任何改变组框放置控件的方式。

我知道我可以使用面板或在添加控件后手动放置控件,但我希望有人知道组合框如何确定放置控件的位置以及为什么它看起来像 padding/margins正在被忽略。

仅当组框有多个控件并且用户控件被视为不需要填充的单个控件时,填充才重要吗?

将 UserControl 的 Dock 属性 设置为在 GroupBox 内时填充。

Dock 属性 使用 parent 控件的 DisplayRectangle 属性,这将尊重 GroupBox 用于文本标题和边框线的内部边框区域。