上篇文章 我介绍了LOADING界面 loading加载完成后 会进入主界面
效果图如下
这里我要给大家说一下我在布局方面的应用 说起布局 做过SL开发的一定都知道 Grid,StackPanel和Canvas
这三种是SL布局当中最常用 我常用的主要是前两个 Canvas我不是经常用只有在BLEND设计上会用到一些
Grid 是类似表格的控件可以定义几行几列 我们默认建一个页面 会自动生成一个叫LayoutRoot的Grid 就拿这个页面来说吧 我的做法是套在最外层的是一个grid
就是LayoutRoot 然后里面在看情况套用多个Grid 这里我用分布图给大家看一下的我大致的布局情况
<Grid> <Grid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/> </Grid.ColumnDefinitions> </Grid>
Height/Width:定义行的高度
MaxHeight/MaxWidth:单元格拉伸最大高/宽度
MinHeight/Minwidth: 单元格压缩最小高/宽度
通过设定Grid.RowSpan,Grid.ColumnSpan来设定控件占据几行几列 默认值都为0
此外它还有一个ShowGridLines属性 很明显 就是指定我们的Grid控件行列之间是否显示分割线 这个很少用到
Table布局中 我们可以指定width的百分比 在Grid中,我们一样可以实现这样的功能 方法是用*去代替了%
Grid是一个很常用的布局控件 类似html中的table 分行 列来进行布局。在开发SL程序时候时 可以在设计窗口进行实时的调整 但我一般用代码来控制 界面调整还是有很多不便 希望大家可以找到更多的方法去进行grid的布局