Windows 8布局控件教程
2013-03-04 14:19:02 来源:WEB开发网<TextBlock> 文本2</TextBlock>
<TextBlock> 空</TextBlock>
<TextBlock> 测试文本1</TextBlock>
</VariableSizedWrapGrid>
实例代码:
<VariableSizedWrapGrid MaximumRowsOrColumns="3" ItemHeight="44" ItemWidth="44">
<Rectangle Fill="Red"/>
<Rectangle Fill="Blue" Height="80"
VariableSizedWrapGrid.RowSpan="2"/>
<Rectangle Fill="Green" Width="80"
VariableSizedWrapGrid.ColumnSpan="2"/>
<Rectangle Fill="Yellow" Height="80" Width="80"
VariableSizedWrapGrid.RowSpan="2"
VariableSizedWrapGrid.ColumnSpan="2"/>
</VariableSizedWrapGrid>
VirtualizingStackPanel
VirtualizingStackPanel是一款同样类似于StackPanel的布局控件,与StackPanel不同的是VirtualizingStackPanel在数据绑定后仅显示当前绑定项,而并非全部数据集合。这样的绑定显示方式在载入超大数据量时,性能差异非常明显,VirtualizingStackPanel数据载入比StackPanel快出数十倍,其内存占有率非常低。
VirtualizingStackPanel很少被用于独立控件效果,经常会配合ListBox,ComboBox等ItemsControl使用,主要用于大数据量绑定。
<ComboBox x:Name="comboboxList1" VerticalAlignment="Top">
<ComboBox x:Name="comboboxList2" VerticalAlignment="Top">
<ComboBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel />
</ItemsPanelTemplate>
</ComboBox.ItemsPanel>
</ComboBox>
</ComboBox>
代码实例:
<StackPanel>
<StackPanel.Resources>
<local:LotsOfItems x:Key="data"/>
</StackPanel.Resources>
<ListBox Height="150" ItemsSource="{StaticResource data}"
VirtualizingStackPanel.VirtualizationMode="Recycling">
</ListBox>
</StackPanel>
Border
Border是最后要提及的布局控件,由于它不是派生自Panel类,所以放在最后讲述。Border是Windows store应用中常见的布局控件之一,主要目的是显示一个边框在一个或者多个对象外围。
开发人员可通过Border属性控制其边框效果以及显示位置等。
<Border BorderBrush="Red" BorderThickness="2" Width="150"
Height="100" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="5">
<TextBlock Text="边框演示" />
</Border>
实例代码:
<Border BorderBrush="Yellow"
更多精彩
赞助商链接