0

次のリストボックスを定義し、ここにあるShinyRedテーマを使用しています。ただし、ラベルのテキストにカーソルを合わせた場合にのみ、マウスをホバーすると行の色が変わることがわかりました。リストアイテムの行のどこかにいる場合は、行の色を変更したいと思います。これを修正するにはどうすればよいですか?

<ListBox Grid.Row="1" ItemsSource="{Binding Categories}" ScrollViewer.CanContentScroll="False">
  <ListBox.ItemTemplate>
    <DataTemplate>
      <Label Content={Binding DisplayName}"/>
    </DataTemplate>
  </ListBox.ItemTemplate>
</ListBox>
4

1 に答える 1

1

を使用しListBox.ItemContainerStyleてアイテムを伸ばします。

<ListBox.ItemContainerStyle>
    <Style TargetType="{x:Type ListBoxItem}" BasedOn="{StaticResource {x:Type ListBoxItem}}">
        <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
    </Style>
</ListBox.ItemContainerStyle>

(また、それでもテキストにのみ反応する場合は、どのヒット テストを設定してみてください。それでも機能しない場合Label.Backgroundそのテーマのコントロール テンプレートはちょっとひどいです)TransparentListBoxItem

于 2012-03-14T21:06:28.600 に答える