4

我很喜欢在这里挑选挑剔,但也许有一个简单的解决方案可以节省我一些时间。控件在Visual Studio 2010中的捕捉

当我画我的WinForms GUI的设计,控制捕捉到某些点。我可以将一个控件的文本基线与另一个控件的基线对齐,我可以将一个控件的左侧和/或顶部对齐到另一个控件,等等。这非常棒。

什么是太伟大,是对照捕捉到他们的利润间隔其他控件。这意味着如果我制作一个垂直的文本框阵列,那么我可以让它们在我的GUI中等距离 - 它看起来不那么杂乱。

然而,并非所有事物都能正确对齐或完全对齐。说我已经把我的文本框,现在我想减少我的窗体的宽度,以便在文本框的边缘和窗体的边缘之间没有空白。此外,我希望TextBoxes的边缘和Form的边缘之间的距离在左侧和右侧相同。如果我拖动窗体的右边缘到左边,朝着文本框它不会对齐。我剩下两个计算来计算宽度应该是多少,或者一个杂耍行为逐渐减小宽度,直到TextBox捕捉到右侧的左侧。

我并不是说这个过程是特别困难或费时。只是如果它突然发生,整个过程将变得更加容易。

是否有VS2010内置选项,或者延期?或者,也许我只是做错了首先?

回答

1

在移动或调整任何内置控件完全当设计师工作的粉笔线。他们不工作的唯一时间是当您调整表格本身的大小时。

       

我同意,这将是非常方便的在这里有粉笔线,以及。我希望我知道一种方法来实现这一点。但不幸的是,我不相信有一个。

的解决方法是要么数学计算正确的尺寸,或者在调整窗体然后通过拖动其中一个控件(和使用出现的粉笔线)检查您的工作猜测。我经历了你不幸定期描述的同样的“杂耍行为”。

1

无论何时需要定位控件以使其“捕捉”到窗体边缘,我通常先将控件移动(或调整大小)为正确大小,然后将这些控件的控件“Anchor”属性更改为锚定到相应的表单边缘(即使表单本身不允许调整大小)。

每当我调整形式这样,相对于该形式的控件位置保持相同,简单地调整大小或根据需要(取决于所选择的Anchor属性)移动控制。

我完全同意,在调整窗体大小时,“捕捉”窗体以控制窗体的能力将非常有用,但它通常有可能以这种方式使用锚定属性 - 时间不会变化工作(比如当一个表单完全由一列文本框组成时是固定的高度),恐怕你需要求助于计算,但是我发现我的大多数对话框都可以调整大小。