【问题标题】:detect mouse state without event handler in Silverlight在 Silverlight 中检测没有事件处理程序的鼠标状态
【发布时间】:2011-09-02 21:26:52
【问题描述】:

有什么方法可以在不使用 Silverlight 中的事件(VS2010,C#)的情况下检测鼠标位置/按钮状态,我可以使用鼠标左/右键向上/向下事件,但我要在外面检测鼠标状态在这些事件中,我有什么选择

谢谢

【问题讨论】:

    标签: silverlight


    【解决方案1】:

    不幸的是,您需要使用事件,但您可以将其设为通用。

    您需要将MouseMove 处理程序连接到您的主布局网格(或其他容器),并检查MouseButtonEventArgs 参数的按钮状态和位置(它继承自MouseEventArgs)。

    您可能会发现这个Mouse Support 页面也很有用。

    【讨论】:

    • 感谢 HiTech,我可以使用网络服务吗?我已经为SL-SQL Server连接做了一个webservice,使用web service函数有意义吗?
    • @Ali_dotNet :您将不得不解释您正在尝试做什么......如果您尝试记录用户交互,您可以使用网络服务记录鼠标位置等。请说明你的意图。
    • 我正在开发一个基于网络的遥测系统,我的用户可以设计一个工业计划,他们可以在画布内拖放一些图像(位于菜单中),我希望我的用户为了能够执行缩放/平移操作,我使用了 rendertransform.scale 来做到这一点,我缩放我的整个画布,这样当我的画布变小时,我无法使用鼠标事件检测鼠标状态,我认为这些事件只有在画布上工作,这就是我要做的,我有什么选择?
    • 鼠标事件由 rendertransform 缩放,但也只发生在它们所附加的容器的边界内。如果您将画布缩放到非常小,您可能会超出其范围。您可以使用 MouseEventArgs.GetPosition(yourcanvas) 将鼠标位置从外部容器转换为画布内的相对位置
    猜你喜欢
    • 2017-06-05
    • 2013-02-03
    • 1970-01-01
    • 2011-06-23
    • 2016-08-13
    • 2012-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多