0
我实现了自定义视图使用的代码基于http://msdn.microsoft.com/en-us/library/ms748859.aspx拉伸/套牌,以适应ListView中
在“TileView”我将如何设置ListView的伸展每个图块以适合可用空间的ListView。即适合恰好3列在ListView即使ListView的变化大小(即,保持每一瓦片总是1/3宽)
<l:PlainView x:Key="tileView" ItemTemplate="{StaticResource centralTile}" />
<DataTemplate x:Key="centralTile">
<StackPanel>
<Grid HorizontalAlignment="Center">
<Image Source="{Binding [email protected]}" />
</Grid>
<TextBlock Text="{Binding [email protected]}" />
<TextBlock Text="{Binding [email protected]}" />
</StackPanel>
</DataTemplate>
编辑:
我有ListView中使用上述进行显示的X砖和在该示例中更改以下XAML:
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<WrapPanel Width="{Binding (FrameworkElement.ActualWidth),
RelativeSource={RelativeSource
AncestorType=ScrollContentPresenter}}"
ItemWidth="{Binding (ListView.View).ItemWidth,
RelativeSource={RelativeSource AncestorType=ListView}}"
MinWidth="{Binding (ListView.View).ItemWidth,
RelativeSource={RelativeSource AncestorType=ListView}}"
ItemHeight="{Binding (ListView.View).ItemHeight,
RelativeSource={RelativeSource AncestorType=ListView}}"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<UniformGrid Columns="3"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
这正是我所需要的,如果ListView调整列的大小也将调整。
现在我需要弄清楚如何动态地更改UniformGrid列:)