다음은 마우스가 넘어갈 때 항목을 확대하는 ItemsControl의 코드입니다.
현재 확대/축소 된 항목의 ZIndex를 증가시켜 다른 항목 위에 올릴 수 없습니다.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를 직접 변경하려고 시도했지만 작동하지 않습니다.
TextBlock의 TextTlock에있는 TextBlock의 부모 인 ContentPresenter에서 ZIndex를 변경해야하는 것으로 보입니다.
<Setter Property="Panel.ZIndex" Value="99" />
그래서 나는 ContentPresenter에의 Z- 색인을 변경했지만, 여전히 그것이 어떻게 작동하는지 아는 사람 있나요
<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>
를 작동하지 않는 이유는 무엇입니까?
나를 위해 잘 작동, 캔버스를 사용합니다. 그래서 당신은 propably 다른 문제가 있습니다. 어떤 종류의 패널을 사용합니까? – dowhilefor
WrapPanel을 사용합니다. 어떤 솔루션이 효과가 있습니까? – Nicolas