這幾天都在用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了。