【问题标题】:How can I refresh the browser page from within a Silverlight app?如何从 Silverlight 应用程序中刷新浏览器页面?
【发布时间】:2011-02-14 05:31:15
【问题描述】:

有没有办法从 Silverlight 中重新加载浏览器页面?即与用户单击重新加载按钮的效果相同?

【问题讨论】:

标签: silverlight browser refresh


【解决方案1】:

我一直用:

刷新页面的命名空间:

使用 System.Windows.Browser;

代码: 在你的按钮点击中给出这段代码..

HtmlPage.Document.Submit();

【讨论】:

  • 对我不起作用... :( IE9 或 Chrome 24 上的 Windows7 x64 上的 Silverlight 4.0
【解决方案2】:

你可以试试这个::-

 HtmlPage.Window.Navigate(HtmlPage.Document.DocumentUri);

【讨论】:

  • @Travis:这可能与缓存有关,因此修改服务器发送的缓存标头可能会有所帮助。
【解决方案3】:

是的。您可以使用NavigationService.Refresh 方法重新加载页面。

【讨论】:

  • 这真的会重新加载浏览器页面吗?听起来不像记录的链接。
【解决方案4】:

http://www.divelements.com/silverlight/tools.aspx

参考上面的链接。

用途:

htmlHost.Document.Submit();

【讨论】:

    【解决方案5】:

    我用

    System.Windows.Browser.HtmlPage.Document.Submit();
    

    【讨论】:

      【解决方案6】:

      在托管您的 silverlight xap 文件的 html 或 aspx 页面中,用 javascript 编写此函数

      function refreshPage() {
         window.location.href = window.location.href + "?updated";
      }
      

      从您的 silverlight 应用程序内部,编写以下代码来刷新应用程序,而不会给用户留下页面已刷新的印象(考虑到 xap 文件已缓存并且它会立即刷新)

      HtmlPage.Window.Invoke("refreshPage");
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-09-14
        • 2012-05-12
        • 2011-09-29
        • 1970-01-01
        • 2012-11-03
        • 2011-03-30
        • 2021-09-19
        相关资源
        最近更新 更多