我正在使用C#和XAML开发Windows 10应用程序.我有一个ListView,我想更改所选项目的默认HighLight颜色.我看到很多代码示例(像这样),但都是为WP8或Win8设计的,我试图实现这些,但它们对我不起作用.
一般来说,我很难修改控件的默认主题,因为我找不到有用的文档.如果有人可以帮助我突出颜色并且还推荐我很好的文档,那将是很棒的.
我想知道如何在选择列表框的项目时添加样式.我有以下列表框:
<ListBox x:Name="ListBoxDays"
VerticalAlignment="Top"
ItemTemplate="{StaticResource WeekDayTemplate}"
ItemsSource="{Binding WeekDayList}" />
Run Code Online (Sandbox Code Playgroud)
我还有一个DataTemplate到列表框.
<phone:PhoneApplicationPage.Resources>
<DataTemplate x:Key="WeekDayTemplate">
<StackPanel x:Name="stackPanel" Orientation="Horizontal" Width="400" Margin="12,0,0,10" Height="100" >
<StackPanel VerticalAlignment="Center" Orientation="Vertical">
<TextBlock Text="{Binding WeekDayName}" Style="{StaticResource PhoneTextExtraLargeStyle}" TextWrapping="Wrap" TextTrimming="WordEllipsis" Foreground="{StaticResource PhoneRadioCheckBoxPressedBorderBrush}" UseLayoutRounding="True" />
<TextBlock Text="{Binding ShortDate}" Style="{StaticResource PhoneTextTitle2Style}" TextWrapping="Wrap" TextTrimming="WordEllipsis" Foreground="{StaticResource PhoneBorderBrush}" Margin="25,0,12,0" />
</StackPanel>
</StackPanel>
</DataTemplate>
</phone:PhoneApplicationPage.Resources>
Run Code Online (Sandbox Code Playgroud)
在我选择列表框中的项目时,不会发生颜色更改.
我担心的是当用户点击它时,在我的LongListSelector中突出显示一个选定的项目.
我试过这个解决方案:http://code.msdn.microsoft.com/windowsapps/Highlight-a-selected-item-30ced444#content
但我还是有问题.
在我的项目中,LongListSelector填充了90~100个项目,如果我点击第x 个元素,第(x + 20)个,第(x + 40)个,第(x + 60)个,(第x + 80)th ...也被突出显示.怎么可能?是什么导致这个?
我试着调试,我注意到"userControlList"(通过上面的链接看到MyLongListSelector1_SelectionChanged事件处理程序)在执行"GetItemsRecursive"后有20个元素,而不是90~100,因为我至少是预期的.
如果你无法解决这个问题,那么有谁知道如何在LongListSelector中实际突出显示所选项目?(使用Listbox而不是一个选项)