我想用C#开发一个程序,以前小工具都是采用控件加进窗体,然后把大小拉到合适的位置,没有用过布局功能。现在想做一个最大化的界面,发现很不方便,听别人说,要使用布局,请问C#教如何使用布局功能,把主界做得好看一点。

解决方案 »

  1.   

    还要借助控件及属性,比如dock,anchor,或者一些容器,比如flowlayoutpanel,tablelayoutpanel
      

  2.   

    充分利用Panel和其他容器控件,当窗口大小改变的时候让控件自动调整而不是手工调整。
      

  3.   

    TableLayoutPanel,不过用起来不太方便。
      

  4.   

    充分利用Panel和其他容器控件,当窗口大小改变的时候让控件自动调整而不是手工调整。
      

  5.   

    优先dock,anchor设置成自动调节,
    还可以用Panel等窗口,
    将控件放Panel再设dock,anchor
      

  6.   

    先总体设计,别总改。
    然后使用table、panel、等
      

  7.   

    个人认为应该优先考虑 dock,anchor
    还有一种方法就是在窗体重画的时候,自己重新计算每个控件的大小和位置
    大家都提到了容器,我只想说说 TableLayoutPanel, 它的优点是使用方便,像BS结构时的Table,想放哪就行,操作方便、直观,布局比较快。
    缺点也很多,微软就提示我们“不应在一切需要可调整大小的布局的情况下都使用该控件”特别是控件多的情况下,或TableLayoutPanel嵌套TableLayoutPanel的时候(其实不应该这么做),或将TableLayoutPanel里控件的Dock属性又设置成了Fill的情况下,它会变的非常的不友好,会出现明显的闪屏现象,就算利用反射将双缓存设置成True也不得不到根治。
    所以,我还是比较推荐考虑dock,anchor属性,结合Panel, GroupBox等容器。