【问题标题】:Can Margin be enforced even with Dock property set?即使设置了 Dock 属性,也可以强制执行保证金吗?
【发布时间】:2011-10-26 20:05:35
【问题描述】:

我有一个 WinForms Form,上面有一些控件。它们都是GrouBox 控件,我希望它们堆叠在一起,并在它们之间设置垂直边距。我已将 Dock 属性设置为 Top 并将它们堆叠起来,但忽略了边距(控件彼此尽可能接近)。

这些边距还能以某种方式强制执行吗? 基本上,它会计算常规停靠位置(好像边距为 0)然后应用边距。这样的事情可能吗?

我尝试过的另一种方法是使用FlowLayoutPanelTopDown 选项。但是,我需要手动设置大小和左/右锚点。

是否有任何简单的方法来完成这个场景,或者我应该坚持我已经拥有的?

【问题讨论】:

  • 当控件停靠时尝试使用Padding而不是Margin
  • 是的,需要 FLP。在其中的控件上设置 Margin 属性以创建间隙。

标签: winforms controls margin dock groupbox


【解决方案1】:

将每个 GroupBox 放置在 Panel 中,将 Panel Dock 属性设置为 Top,Group Box Dock 属性设置为 Fill。然后在面板上设置填充。

【讨论】:

  • 填充是关键!至少在我的情况下。
【解决方案2】:

设置停靠属性将忽略 GroupBox 控件之间的填充属性,所以是的,最好的办法是使用 Flow 或 Table 面板来执行此操作。

【讨论】:

    【解决方案3】:

    添加一个虚拟透明面板停靠在每个文本框之间,高度等于您需要的确切距离。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-24
      • 1970-01-01
      • 2022-01-15
      相关资源
      最近更新 更多