问题 ListBox样式Windows手机上的所选项目


我想知道如何在选择列表框的项目时添加样式。 我有以下列表框:

<ListBox x:Name="ListBoxDays" 
                        VerticalAlignment="Top" 
                        ItemTemplate="{StaticResource WeekDayTemplate}" 
                        ItemsSource="{Binding WeekDayList}"  /> 

我还有一个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> 

在我选择列表框中的项目时,不会发生颜色变化。


8027
2018-02-08 15:33


起源



答案:


您必须更改模板的样式 ListBoxItem 哪个 ListBox 为其呈现的每个项目生成。您更新的模板需要自定义选定的可视状态。然后,您可以将此新模板与您的模板相关联 ListBox 通过 ListBox.ItemContainerStyle 属性。

有一个很好的教程,下载源代码,这里:

http://windowsphonegeek.com/tips/How-to-customize-the-WP7-ListBox-Selected-Item--Part1-Control-Template


12
2018-02-08 16:11



+1很棒的资源。 - Edward


答案:


您必须更改模板的样式 ListBoxItem 哪个 ListBox 为其呈现的每个项目生成。您更新的模板需要自定义选定的可视状态。然后,您可以将此新模板与您的模板相关联 ListBox 通过 ListBox.ItemContainerStyle 属性。

有一个很好的教程,下载源代码,这里:

http://windowsphonegeek.com/tips/How-to-customize-the-WP7-ListBox-Selected-Item--Part1-Control-Template


12
2018-02-08 16:11



+1很棒的资源。 - Edward