UniformGrid:特殊的Grid,所有單元格相同尺寸。 Canvas:跟html5的canvas很像,也可以像winform那樣基於坐標佈局 Grid:網頁的table GridSplitter:Grid里的分隔符,可以拖動調整大小 //ShowsPreview="True" 拖拽不會立即調整...
UniformGrid:特殊的Grid,所有單元格相同尺寸。
Canvas:跟html5的canvas很像,也可以像winform那樣基於坐標佈局
Grid:網頁的table
GridSplitter:Grid里的分隔符,可以拖動調整大小
<GridSplitter Grid.Row="1" HorizontalAlignment="Stretch" Height="10" Background="Blue" Grid.ColumnSpan="3"/>
//ShowsPreview="True" 拖拽不會立即調整,滑鼠釋放調整 , DragIncrement="10"每次拖拽幅度寬度
//註意:Grid的Col或Row設置Auto,以便根據內容大小調整
SharedSizeGroup:Grid中的共用尺寸
在Grid外層佈局添加附加屬性Grid.IsSharedSizeScope="True" 設置允許對齊尺寸
在需要的對齊列設置
SharedSizeGroup="abc" 即可對齊
<StackPanel Grid.IsSharedSizeScope="True"> <Grid x:Name="LayoutRoot_grid1" ShowGridLines="True" Background="Cornsilk"> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" SharedSizeGroup="abc"/> <ColumnDefinition Width="Auto"/> <ColumnDefinition /> </Grid.ColumnDefinitions> <Label Margin="5">ceshishisshw一段文本很長的文章決定了房價愛你撒地方阿薩帝發交水電費撒旦濟南房價阿斯頓浪費</Label> <Label Grid.Column="1" >moretext</Label> <Label Grid.Column="2" Margin="2">而是大家拉薩的房間里的刷卡費</Label> </Grid> <Grid x:Name="LayoutRoot_grid2" ShowGridLines="True" Background="Azure"> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" SharedSizeGroup="abc"/> <ColumnDefinition/> </Grid.ColumnDefinitions> <Label Margin="5">房價阿斯頓浪費</Label> <Label Grid.Column="1" >moretext</Label> </Grid> </StackPanel>
效果:
UniformGrid 規則的Grid
指定行和列,即可創建一樣大小的框架 //曾用這個Grid做過類似2048這樣的小游戲
InkCanvas (高級開發)
EditingMode的屬性:
1、Ink(EditingMode的預設值) —— 通過滑鼠或者指示筆來繪製筆畫。
2、InkAndGesture —— 和Ink一樣,但同樣可以識別用戶的手勢。手勢的列表(Up、Down、Circle、ScratchOut和Tap)保存在System.Windows.Ink.ApplicationGesture枚舉類型中。
3、GestureOnly —— 只識別手勢,不會繪製用戶輸入的筆畫。
4、EraseByStroke (EditingModeInverted的預設值)—— 當筆畫被觸及時將筆畫擦掉。
5、EraseByPoint —— 只擦掉直接碰及到的筆畫部分(就像傳統的鉛筆橡皮)。
6、Select —— 當被觸及時,選擇筆畫或者任何UIElement,使它們能被刪除、移動或者在InkCanvas範圍內被調整尺寸。
7、None —— 對於滑鼠或者指示筆不做任何響應。