2012-03-22 96 views
0

微软Visual C#中的新功能。我做了一个简单的程序enter image description here。一切工作都很好,不幸的是,对我而言,棘手的部分是我不知道如何正确布置我的对象。我想复制Microsoft Visual C#界面enter image description here的布局,其中面板重新调整大小并且用户可以调整每个面板的宽度和高度时,面板将调整为预定义的比例和比例。任何阅读或代码将是一个很大的帮助。非常感谢!c#中的用户界面布局

+0

您正在使用的WinForms或WPF? – Ian 2012-03-22 11:52:05

+0

控件的锚定属性不是你正在寻找的? – gbianchi 2012-03-22 11:52:25

+1

@lan:在属性窗口中可以找到'System.Windows.Forms.GroupBox',所以WinForms ?! – sll 2012-03-22 11:53:58

回答

0

你可以做一些事情:

+0

谢谢你的努力! – user1176111 2012-03-22 12:12:37

+0

@ user1176111:如果您发现有用的答案,请点击向上箭头向上投票,并记得将答案标记为您希望接受的答案,只要该答案符合法案。 – Ian 2012-03-22 12:33:10

0

对于一个简单的开始锚点属性是你想要的。例如,如果您为左手控制设置了所有四个锚点,并且父窗口更改了大小,则它将按比例调整大小。

之后,它开始变得复杂。添加面板,然后将控件放入其中。将Dock设置为左侧,或顶部或填充。在可滚动控件上增长并且缩小。分割器酒吧。

最后的沟处理调整事件大小和计算位置和大小。

请坐下来思考一下你想要发生什么,玩弄最小和最大的高度和宽度,也就是说,当你的表单看起来像邮票大小时,没有什么意义。

PS不要忘记VS允许浮动面板,并且在布局中持续(有时是某种)用户选择,这是一项更大的工作。

+0

谢谢你的努力! – user1176111 2012-03-22 12:12:53

0

放置一个TableLayoutPanel作为基础控件,将它锚定到所有边,根据您的喜好用“百分比”大小定义许多列和行。

然后将表单的不同部分放在不同的表格单元格中。将您的控件正确放置在每个单元中。

如果需要,也可以在表格上方使用拆分容器。

理想的顺序应该是这样下面

SplitContainer的 TableLayoutPanel中 面板 控制