2009-04-27 12 views

Répondre

6

Malheureusement, vous ne pouvez pas utiliser SystemColors.ControlTextBrushKey parce qu'il applique lorsque l'élément est désélectionné, ou lorsqu'il est sélectionné mais inactif (votre question se lit comme si vous n'êtes intéressé que par ce dernier). Cependant, vous pouvez le faire:

<ListBox ...> 
    <ListBox.Resources> 
     <!-- this customizes the background color when the item is selected but inactive --> 
     <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}">Red</SolidColorBrush> 
    </ListBox.Resources> 
    <ListBox.ItemContainerStyle> 
     <Style> 
      <Style.Triggers> 
          <!-- this customizes the foreground color when the item is selected but inactive --> 
       <Trigger Property="Selector.IsSelected" Value="True"> 
        <Setter Property="TextElement.Foreground" Value="Blue"/> 
       </Trigger> 
      </Style.Triggers> 
     </Style> 
    </ListBox.ItemContainerStyle> 
</ListBox> 
+1

Merci pour votre réponse, mais malheureusement, élément sélectionné devient gris, quand ListBox desserre concentrer :( Je premier plan d'être blanc et fond bleu, lorsque l'élément est sélectionné, mais inactif. –

+0

mis à jour ma réponse. –

3

Pour moi, cela a fonctionné - à la fois ListBox actif et inactif, le premier plan et la couleur de fond de itemss sélectionnés sont les mêmes.

<ListBox.ItemContainerStyle> 
    <Style TargetType="{x:Type ListBoxItem}"> 
    <Style.Resources> 
     <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="DodgerBlue"/> 
     <SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}" Color="White"/> 
     <SolidColorBrush x:Key="{x:Static SystemColors.InactiveSelectionHighlightBrushKey}" Color="DodgerBlue"/> 
     <SolidColorBrush x:Key="{x:Static SystemColors.InactiveSelectionHighlightTextBrushKey}" Color="White"/> 
    </Style.Resources>   
    </Style> 
</ListBox.ItemContainerStyle> 
+0

Meilleure réponse de travail sur le web pour moi – Julian

+0

Cela fonctionne parfaitement, merci –