2009-09-11 90 views
1

我在C#中有一个Windows Forms窗体。Windows窗体组件的自动比例调整大小?

它就像一个常规的Windows GUI应用程序。不过,我正面临着使窗体上的不同组件根据窗口大小自行调整大小的问题。我的意思是我不完全知道组件的哪个属性会被改变。

我在窗体中有一个tabPage。 tabPage包含一个splitcontainer,里面有2个面板。 左侧面板包含一个treeView,右侧面板具有单选按钮,文本框,组合框和按钮等组件

当我运行我的应用程序并调整窗口大小(通过拖动窗口的某个角或通过点击最大化右上角的按钮)Windows窗体窗体和tabPage展开,但拆分容器不。它保持在原来的位置。此外,我想锚定拆分容器,以便如果我缩小窗口,拆分cointainer仍然保留在左上角。很抱歉,我无法在此处放置屏幕截图。

回答

2

只需将SplitContainer的Anchor属性设置为Top,Left,Right,Bottom即可。或者将Dock属性设置为Fill。

2

您是否尝试过使用TableLayoutPanel? Windows Forms没有很好的布局支持(与Java和WPF相比),但TLP工作得相当好 - 直到你发现它不能做你想做的事情,然后这是一种痛苦:)

+0

请注意,您可以通过从其中派生新控件并将其设置为使用双缓冲来增强TableLayoutPanel。这大大提高了其调整速度。 – 2009-09-11 14:31:22

+0

我还没试过TableLayoutPanel。我甚至没有用过它。即使使用TLP,如果我遇到问题,也会在此检查并发布。 无论如何感谢。 – zack 2009-09-11 14:32:22