在Visual Studio 2010中控制捕捉功能

4

我只是在挑剔,但也许有一个简单的解决方案可以节省我的时间。

当我在设计器中绘制Winforms GUI时,控件会自动吸附到某些点上。我可以将一个控件文本的基线与另一个控件的基线对齐,我可以将一个控件的左侧和/或顶部与另一个控件对齐,等等。这一切都很好。

同样很好的是,控件会自动吸附到它们的边距所占的空间。这意味着,如果我正在制作一列垂直排列的文本框,则可以使它们在我的GUI中等距离分布,看起来不那么杂乱。

然而,并非所有东西都能正确地或完全地捕捉。假设我已经放置了文本框,现在我希望缩小窗体的宽度,以便文本框的边缘与窗体的边缘之间没有空白。此外,我希望文本框边缘与窗体边缘之间的距离在左侧和右侧相同。如果我将窗体的右边缘向左拖动,靠近文本框,它不会自动吸附。我只能通过计算确定应该是多少宽度,或者逐渐减小宽度直到文本框同时吸附到左侧和右侧。

我并不是说这个过程特别困难或耗时。只是如果它能自动吸附就会更容易。

在VS2010中是否有内置选项,或者扩展程序?或者也许我一开始就做错了?

2个回答

1
设计师中的捕捉线在移动或调整任何内置控件时表现完美。唯一不起作用的情况是当您调整窗体本身大小时。

    

我同意在这里有吸附线会非常方便。我希望我知道如何启用它。但不幸的是,我认为没有一种方法可以实现。

解决方法要么是通过数学计算来计算正确的大小,要么是猜测调整窗体的大小,然后通过拖动控件之一(并使用出现的吸附线)进行检查。我也经常陷入你所描述的“变戏法”的情况中。


1

每当控件需要放置在"捕捉"到表单边缘时,我通常首先将控件移动(或调整大小)到正确的尺寸,然后更改这些控件的“锚定”属性,使其锚定到相应的表单边缘(即使表单本身不允许调整大小)。

这样,无论何时我调整表单的大小,控件相对于该表单的位置仍保持不变,只是根据所选的锚定属性调整控件的大小或位置。

我完全同意,在调整表单大小时,能够"捕捉"到控件的能力非常有用,但通常可以通过这种方式使用锚定属性进行解决-当它不起作用时(例如,当一个表单完全由一列文本框组成且高度固定),恐怕您需要求助计算,但我发现大多数对话框都是可调整大小的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接