我想使用一个按钮,当鼠标进入按钮时,会显示一个弹出图像。复杂的是图像将与按钮重叠,我希望图像保持可见,直到鼠标离开按钮或图像。我发现,当图像与按钮重叠时,我不能使用按钮的鼠标离开事件,因为只要鼠标移动到按钮的一部分,图像被隐藏的图像重叠。
这似乎是一个简单的要求,但我无法获得有效的解决方案,任何帮助都会非常感激
答案 0 :(得分:1)
您所要做的就是将图像放在按钮内(例如使用Popup),您甚至可以在XAML中完成所有操作:
<Button>
<Button.ContentTemplate>
<DataTemplate>
<Grid>
<TextBlock Text="Button Text"/>
<Popup Name="popup">
<Image Source="Image.png"/>
</Popup>
</Grid>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding IsMouseOver,RelativeSource={RelativeSource TemplatedParent}}" Value="true">
<Setter TargetName="popup" Property="IsOpen" Value="true"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</Button.ContentTemplate>
</Button>
我使用了DataTemplate并没有将内容放入按钮,因为我需要使用触发器来显示和隐藏弹出窗口。
答案 1 :(得分:0)
检查Mouse.Capture on MSDN。
因此,您可以确保元素接收鼠标输入,无论光标是否在其边界内。
答案 2 :(得分:0)
尝试将此Image的“IsHitTestVisible”设置为False。