这几天都在用blend拖拽界面.我想要的效果是
放大后出现的效果是
但实际出来的效果是放大以后能看到所有的控件,缩小以后窗体就把控件个遮住了.怎么办?
在WPF中提供了9种布局方式,具体Grid,Canvas,StackPanel。。。记不住针对不同的界面实际用到的布局也是不同的,所谓的设计就是视情况而定
比方说上面的例子,自己从直接往上面托控件,然后手动去对齐。眼睛都成对眼儿了效果还是不令人满意,但如果是窗体固定大小不然其变动。这样的方式完全能满足需求,一个一个去对齐也恼火。
然后我把外面的Layoutroot (实际上也是一个grid)拆分成9行。如下图
然后再2B的在每一行中加入一个grid
然后再在每个grid下面2B的分3列。
然后把3个控件放在1,2列。然后设置控件的宽度(因为下面的lable的字符长度不一),设置控件的水平位置,垂直位置。设置margin为0。
这样下来基本能达到窗体放大,元素的跟着放大。间距也放大缩小。。
总结一下:之所以说是2B的做法,是因为不需要那么多的grid,刚开始的时候只需要分3行,然后第一行放一个grid分6行3列。这样只需要控制控件的在grid中的位置。设置控件的水平垂直对齐方式就ok了。