Вот код моего ItemsControl, который увеличивает объекты при наведении мыши.
Мне не удается увеличить ZIndex текущего увеличенного элемента, чтобы поместить его поверх остальных.
<ItemsControl ItemsSource="{Binding Path=Value}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=Name}"
RenderTransformOrigin="0.5 0.5">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="RenderTransform">
<Setter.Value>
<ScaleTransform ScaleX="1.5"
ScaleY="1.5" />
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
</DataTemplate>
</ItemsControl.ItemTemplate>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
Я попытался изменить ZIndex напрямую в триггере, но он не работает.
Кажется, мне нужно изменить ZIndex в ContentPresenter, который является Родителем TextBlock в VisualTree, а не напрямую вTextBlock.
<Setter Property="Panel.ZIndex" Value="99" />
Поэтому я попытался изменить ZIndex в ContentPresenter, но он все еще не работает
<ItemsControl.ItemContainerStyle>
<Style TargetType="{x:Type ContentPresenter}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Panel.ZIndex" Value="99" />
</Trigger>
</Style.Triggers>
</Style>
</ItemsControl.ItemContainerStyle>
Кто-нибудь знает, как он работает?