如果我右键单击图像,我会得到以下事件(按顺序显示):
1)MouseRightButtonDown
2)PreviewMouseRightButtonUp
3)MouseRightButtonUp
此时我的应用程序显示上下文菜单。如果那是打开的,我再次右键点击图像我只能得到这个事件:
1)MouseRightButtonDown
当上下文菜单打开时,还不确定如何处理这些事件?
答案 0 :(得分:0)
您如何跟踪活动?你有什么代码?您是否使用Snoop检查了活动?它有非常好的功能,您可以跟踪所有路由事件。它总能帮助您找出谁处理:
(来源:blois.us)
它表明,无论ContextMenu是否开放,PreviewMouseUp总是来临......
PS:我知道,在你回答之前的问题之前我不应该写这个,但你试过了吗?
img.AddHandler(PreviewMouseUpEvent, new MouseButtonEventHandler(ImgPreviewMouseUp), true /* Handled events too */);
void ImgPreviewMouseUp(object sender, MouseButtonEventArgs e)
{
//
}
:)