通过多数据触发器显示图像控制
本文关键字:显示图 图像 控制 显示 触发器 多数据 | 更新日期: 2023-09-27 18:21:17
我试图在较大的边界控件上显示一个小图像。当鼠标在该边界上时,必须显示图像,第二个条件是dpmenu折叠。但是,当鼠标在图像上(即在边界上)时,不会触发ismouseover。图像闪烁的结果是:(
我希望当鼠标越过边界和图像时显示图像。
<Grid>
<Grid.Resources>
<Style TargetType="Image" x:Key="ImageConditionnalvisibility">
<Setter Property="Visibility" Value="Collapsed" />
<Style.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding ElementName=BrowserBorder, Path=IsMouseOver, Mode=OneWay}" Value="True" />
<Condition Binding="{Binding ElementName=dpMenuTop,Path=Visibility}" Value="Collapsed" />
</MultiDataTrigger.Conditions>
<Setter Property="Visibility" Value="Visible" />
</MultiDataTrigger>
</Style.Triggers>
</Style>
</Grid.Resources>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
...
<Border Grid.Row="1" Name="BrowserBorder" Width="500" Height="500" />
<Image Grid.Row="1" Width=16" Height="16" Style="{StaticResource ImageConditionnalvisibility}" ... />
您可以创建另一个MultiDataTrigger
,其中Border
条件被Image
替换。