2017-03-17 81 views
1

我似乎無法弄清楚這一點!
ListBox具有焦點時,我想要將所有項目的背景更改爲黃色。
我在做什麼錯?如何設置列表框重點時所有列表框項目的背景

<ListBox x:Name="ManufacturerList" Grid.Row="10" Foreground="Black" FontSize="16" Background="DarkGray" HorizontalContentAlignment="Stretch" 
     ItemsSource="{Binding Manufacturers}"> 
    <ListBox.ItemContainerStyle> 
     <Style TargetType="ListBoxItem"> 
      <Setter Property="Background" Value="White" /> 
      <Style.Triggers> 
       <DataTrigger Binding="{Binding ElementName=ManufacturerList, Path=IsFocused}" Value="True"> 
        <Setter Property="Background" Value="Yellow" /> 
       </DataTrigger> 
      </Style.Triggers> 
     </Style> 
    </ListBox.ItemContainerStyle> 
</ListBox> 

回答

1

使用此代碼:

<ListBox x:Name="ManufacturerList" Grid.Row="10" Foreground="Black" FontSize="16" Background="DarkGray" HorizontalContentAlignment="Stretch" 
    ItemsSource="{Binding Manufacturers}"> 
     <ListBox.ItemContainerStyle> 
      <Style TargetType="ListBoxItem">     
       <Style.Triggers> 
        <Trigger Property="IsSelected" Value="True"> 
         <Setter Property="FontWeight" Value="Bold" /> 
         <Setter Property="Background" Value="Transparent" /> 
         <Setter Property="Foreground" Value="Black" /> 
        </Trigger> 
       </Style.Triggers> 
       <Style.Resources> 
        <SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}" Color="Yellow"/> 

        <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Yellow"/> 

        <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Yellow" /> 
       </Style.Resources> 
      </Style> 
     </ListBox.ItemContainerStyle> 
     <ListBoxItem Tag="2" Content="One" IsSelected="True" /> 
     <ListBoxItem Tag="5" Content="Two" /> 
    </ListBox> 
+0

抱歉,不工作要麼。 – NickV

+0

什麼是錯誤? –

+0

沒有錯誤,它只是沒有工作。它怎麼可能?您正在使用IsSelect屬性。 我不想突出顯示選定的列表框項目,我想在列表框控件本身獲得焦點時設置所有列表框項目的背景顏色。 – NickV

相關問題