Metro app:以编程方式更改GridView.ItemTemplate

时间:2012-07-25 19:56:57

标签: xaml microsoft-metro winrt-xaml

我的Xaml中有一个GridView,给定的DataTemplate设置了一个StaticResource:

<GridView
        x:Name="itemGridView"
        ItemsSource="{Binding Source={StaticResource itemsViewSource}}"
        ItemTemplate="{StaticResource MyItemTemplate }" 
        SelectionMode="None"
        IsItemClickEnabled="True"
        ItemClick="ItemView_ItemClick"/>

通过单击AppBar中的按钮,我想通过将另一个DataTemplate - MyItemTemplateWide应用于此特定列表来重新设置此模板。

我的datatemplates存储在一个引用为ResourceDictionary的Xaml文件中。

我想在C#代码隐藏中加载新的DataTemplate。

DataTemplateSelector会在这里帮助我(例如在Xaml中设置任何隐藏值)吗?

1 个答案:

答案 0 :(得分:-1)

你可以用不同的模板创建多个网格视图,并根据需要改变网格的可见性。

使正在使用的网格视图可见并使其他可见性为false

注意: 要放置在xaml中的gridview的位置必须对所有人都相同。表示gird.row和grid.column在每个gridview中必须相同,如果将它放在网格中。