我创建从罐头模板SplitPage认为有以下ListView的定义:Metro应用:ListView控件的ItemTemplate DataTemplate中为所选项目
<!-- Vertical scrolling item list -->
<ListView
x:Name="itemListView"
AutomationProperties.AutomationId="ItemsListView"
AutomationProperties.Name="Items"
TabIndex="1"
Grid.Row="1"
Margin="-10,-10,0,0"
Padding="120,0,0,60"
ItemsSource="{Binding Source={StaticResource itemsViewSource}}"
IsSwipeEnabled="False"
SelectionChanged="ItemListView_SelectionChanged"
ItemTemplate="{StaticResource Standard130ItemTemplate}"/>
正如你可以看到它使用Standard130ItemTemplate数据模板从StandardStyles.xaml:
<!-- List-appropriate 130 pixel high item template as seen in the SplitPage -->
<DataTemplate x:Key="Standard130ItemTemplate">
<Grid Height="110" Margin="6">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Border Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}" Width="110" Height="110">
<Image Source="{Binding Image}" Stretch="UniformToFill" AutomationProperties.Name="{Binding Title}"/>
</Border>
<StackPanel Grid.Column="1" VerticalAlignment="Top" Margin="10,0,0,0">
<TextBlock Text="{Binding Title}" Style="{StaticResource TitleTextStyle}" TextWrapping="NoWrap"/>
<TextBlock Text="{Binding Subtitle}" Style="{StaticResource CaptionTextStyle}" TextWrapping="NoWrap"/>
<TextBlock Text="{Binding Description}" Style="{StaticResource BodyTextStyle}" MaxHeight="60"/>
</StackPanel>
</Grid>
</DataTemplate>
问题是即使在选定的项目和鼠标悬停在具有蓝色突出显示的项目上,所有文本都显示为黑色。我想定义一个新模板Standard130SelectedItemTemplate,其中我将文本设置为白色,并且我希望仅在选择时将此数据模板分配给ListView。如何将此数据模板分配给选定项目?
嗨,感谢您的建议,但它似乎不起作用。我认为原因在于项目模板的数据模板分配可能会覆盖您在故事板中分配的任何内容。 – 2013-05-11 02:26:32
ItemTemplate实际上被'ItemContainerStyle'包装,也被称为'ListViewItem'样式。如果您查看我提到ContentPresenter的样式,您会注意到它将数据项的值作为Content并将选定的ItemTemplate作为其ContentTemplate。你确定你正确应用了新的Style到ListView吗?施加后 – 2013-05-11 17:48:11
的ListView中定义ItemContainerStyle: 的ItemTemplate = “{StaticResource的Standard130ItemTemplate}” ItemContainerStyle = “{StaticResource的ListViewItemStyle1}” 在ListViewItemStyle1中,ContentPresenter行: –
2013-05-14 03:39:24