我有一个Silverlight控件,可以作为下拉菜单。当鼠标ISNT悬停在下拉控件或其任何一个子节点上时,我想要鼠标按下事件。
我该怎么做呢?
答案 0 :(得分:2)
那取决于你对“屏幕”的意思。
在Silverlight中,当鼠标悬停在Silverlight插件实际使用的屏幕部分上时,您将能够检测到鼠标按下。
第一步是使用此代码: -
Application.Current.RootVisual.AddHandler(UIElement.MouseLeftButtonDown, myMouseButtonHandlerMethod, true)
这对您来说可能已经足够了,但是,如果在使用Popup
或ChildWindow
控件时仍需要检测鼠标,则还需要将此处理程序附加到这些控件上(因为坐在RootVisual
上方。
如果您想在主机html页面中使用Javascript,您可以采取进一步措施。如果您的SL组件仅占用HTML页面的一部分,您可以通过HTMLBridge获取更多事件,以便在浏览器客户端区域的任何位置检测鼠标。
如果你真的是指整个屏幕,那么目前这是不可能的。