WPF:防止工具提示更改组件的鼠标进入/离开事件行为
我有一个WPF用户控件,其中有两个自定义控件WPF:防止工具提示更改组件的鼠标进入/离开事件行为,wpf,Wpf,我有一个WPF用户控件,其中有两个自定义控件 <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="*" /> <ColumnDefinition Width="65" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> &l
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="65" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<MyControl x:Name="leftControl" Grid.Column="0" />
<MyControl x:Name="rightControl" Grid.Column="2" />
</Grid>
自定义控件会在鼠标进入和鼠标离开事件时做出反应。但是,它们也有工具提示。左组件确实显式位于右组件上方,以便在工具提示到达右组件区域时,右组件不会隐藏工具提示
我现在的问题是:工具提示似乎扩展了左侧组件的边界。当显示的工具提示覆盖了右控件的一部分区域,并且我将鼠标悬停在右控件上时,我将获得这两个控件的enter/leave事件,就好像我一进入工具提示之前所在的区域就进入了左控件,同时仍将鼠标悬停在右控件上
我如何告诉WPF在提升鼠标时忽略工具提示区域
一些屏幕截图可以说明:
谢谢 除了使用
工具提示之外,还有一种替代方法:
只需创建一个相对于鼠标移动的弹出窗口
。离开控件时,弹出窗口
隐藏。这是解决你的问题的一个好办法。您可能希望对显示位置进行调整(即,如果它到达鼠标右边缘,它将转到鼠标左边缘)。我知道这不是一个直接的答案,但它是一个解决方案 我的回答没有解决你的问题吗?事实证明,工具提示不是真正的问题。因此,虽然我认为你的答案是有价值的,但实际上我不能证明它是正确的。