現在、単純なクラス (5 つの項目をロードする) をロードする Windows ストア アプリケーションを作成しています。
シンプルなグリッドを使用してアイテムをロードし、スタイリングを設定します。
コードスニペット;
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}" Margin="261,111,10,302">
<ListView ItemsSource="{Binding}" Name="lstMatters" SelectionMode="Multiple">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Tapped="spMatter_Tapped" >
<Image Source="{StaticResource MatterImage}"></Image>
<GridView ItemContainerStyle="{StaticResource GridViewItemStyle1}" SelectionMode="None">
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel Orientation="Horizontal" IsHitTestVisible="False"/>
</ItemsPanelTemplate>
</GridView.ItemsPanel>
<GridViewItem Margin="3" Style="{StaticResource gridViewHeader}" Content="FileRef: " FontSize="20"></GridViewItem>
<GridViewItem Margin="3" Content="{Binding Path=FileRef}" FontSize="20"></GridViewItem>
<GridViewItem Margin="3" Style="{StaticResource gridViewHeader}" Content="Description: " FontSize="20"></GridViewItem>
<GridViewItem Margin="3" Content="{Binding Path=Description}" FontSize="20"></GridViewItem>
<GridViewItem Margin="3" Style="{StaticResource gridViewHeader}" Content="DocumentSet: " FontSize="20"></GridViewItem>
<GridViewItem Margin="3" Content="{Binding Path=DocumentSet}" FontSize="20"></GridViewItem>
<GridViewItem Margin="3" Style="{StaticResource gridViewHeader}" Content="MatterType: " FontSize="20"></GridViewItem>
<GridViewItem Margin="3" Content="{Binding Path=MatterType}" FontSize="20"></GridViewItem>
</GridView>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ListView>
</Grid>
DocumentSet列がロードされてグリッドに表示されると、コードは一種の「switch」ステートメントを実行し、DocumentSetに従って特定のスタイルを使用するという意味で、「動的」スタイルを作成しようとしています。(つまり、DocumentSet の値に応じて gridViewItem のスタイルを変更します。
Switch DocumentSet
Case "a"
style = style.a
Case "b"
style = style.b)
それが理にかなっていることを願っていますか?
前もって感謝します。