WPF HandyControl Trigger IsSelected 触发器修改 ListBox 中 DataTemplate 模板 StackPanel 背景图片
<ListBox ItemsSource="{Binding NavMenus}" BorderThickness="0" ItemTemplate="{DynamicResource leftItemTemplate}" ItemContainerStyle="{DynamicResource mainMenuItemStyle}" Background="Transparent" SelectionMode="Single" SelectedItem="{Binding SelectMenu}" Grid.Column="0" Grid.Row="2" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="SelectionChanged">
<i:InvokeCommandAction Command="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=Window},Path=DataContext.SelectItemCmd}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Vertical"/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
</ListBox>
<!--主页左边导航项模板-->
<DataTemplate x:Key="leftItemTemplate" DataType="{x:Type vm:MainItemInfo}">
<Grid >
<StackPanel x:Name="StackPanel" Width="200px" Height="55px" HorizontalAlignment="Center" VerticalAlignment="Center">
<StackPanel.Background>
<ImageBrush ImageSource="/imgs/Button1.png" />
</StackPanel.Background>
<TextBlock Text="{Binding ItemText}" Style="{StaticResource TextBlockDefaultBold}" Margin="20" Foreground="White" />
</StackPanel>
</Grid>
</DataTemplate>
<!--主页左边导航项样式-->
<Style TargetType="ListBoxItem" x:Key="mainMenuItemStyle">
<Setter Property="Height" Value="60px"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBoxItem">
<Border x:Name="br">
<ContentPresenter VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<!--<Trigger Property="IsSelected" Value="True">
<Setter TargetName="StackPanel" Property="Background">
<Setter.Value>
<ImageBrush ImageSource="/imgs/Button2.png" />
</Setter.Value>
</Setter>
</Trigger>-->
<!--<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background">
<Setter.Value>
<ImageBrush ImageSource="/imgs/Button2.png" />
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background">
<Setter.Value>
<ImageBrush ImageSource="/imgs/Button2.png" />
</Setter.Value>
</Setter>
</Trigger>-->
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>