2012-02-08 16 views
11

vorrei sapere come posso aggiungere uno stile quando viene selezionato un elemento della casella di riepilogo. Ho la seguente casella di riepilogo:ListBox Style Elemento selezionato su windows phone

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

e ho anche un DataTemplate alla casella di riepilogo.

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

Nel momento in cui seleziono un elemento della casella di riepilogo, non si verifica alcun cambiamento di colore.

risposta

12

È necessario modificare lo stile del modello ListBoxItem che lo ListBox genera per ciascuno degli articoli che esegue il rendering. Il tuo modello aggiornato deve personalizzare lo stato visivo selezionato. È quindi possibile associare questo nuovo modello con lo ListBox tramite la proprietà ListBox.ItemContainerStyle.

C'è un buon tutorial, con codice sorgente per scaricare, qui:

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

+0

+1 grande risorsa. – loyalpenguin

Problemi correlati