【问题标题】:Is it possible to catch F5 in a Silverlight application是否可以在 Silverlight 应用程序中捕获 F5
【发布时间】:2011-09-15 19:50:14
【问题描述】:

我有一个功能请求来捕获 F5 键并刷新 Silverlight 应用程序中的内容,而不是让浏览器刷新整个应用程序。在一个简单的应用程序中,我尝试挂钩 KeyDown 事件,但它永远不会通过 F5 到达那里。

在 Silverlight 中可以做到这一点吗?

【问题讨论】:

标签: silverlight browser silverlight-4.0


【解决方案1】:

浏览器首先按下所有键并确定是否将它们传递给托管内容(Silverlight)。 AFAIK 按下 F5 时无法停止刷新,因为它将始终由浏览器处理。

您也许可以使用 javascript 检测按键并将其传递给 SL,但我很确定这不会阻止浏览器刷新。

【讨论】:

    【解决方案2】:

    我发现 this post 显示了如何在 javascript 中执行此操作。我对其进行了测试并且它可以工作(IE9)...除非您将注意力集中在 Silverlight 应用程序中:-)。 这个SO post 类似,但也没有解决方案。

    在尝试之后,我同意@Phil 的观点,即停止刷新可能是不可能的,至少对于 IE 而言。

    【讨论】:

      【解决方案3】:

      如果客户愿意将您的代码放到他们的浏览器中,那么也许您可以说服他们在浏览器外安装应用程序,这样您就可以拥有更好的导航控制

      【讨论】:

        猜你喜欢
        • 2014-01-29
        • 1970-01-01
        • 2019-01-10
        • 2011-05-01
        • 2011-07-02
        • 1970-01-01
        • 2023-04-04
        • 2015-02-24
        • 1970-01-01
        相关资源
        最近更新 更多