2012-02-08 13 views
11

Me gustaría saber cómo puedo agregar un estilo cuando se selecciona un elemento del cuadro de lista. tengo el siguiente cuadro de lista:ListBox Estilo Elemento seleccionado en el teléfono de Windows

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

y también tengo un DataTemplate al cuadro de lista.

<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> 

En el momento en que selecciono un elemento de la lista, no se produce ningún cambio de color.

Respuesta

12

Tiene que cambiar el estilo de la plantilla ListBoxItem que genera el ListBox para cada uno de los elementos que representa. Su plantilla actualizada necesita personalizar el estado visual Seleccionado. A continuación, puede asociar esta nueva plantilla con su ListBox a través de la propiedad ListBox.ItemContainerStyle.

Hay un buen tutorial, con el código fuente para descargar, aquí:

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

+0

+1 gran recurso. – loyalpenguin

Cuestiones relacionadas