Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Silverlight 3-浏览器外HtmlPage.Window.Navigate_Silverlight_Silverlight 3.0_Out Of Browser - Fatal编程技术网

Silverlight 3-浏览器外HtmlPage.Window.Navigate

Silverlight 3-浏览器外HtmlPage.Window.Navigate,silverlight,silverlight-3.0,out-of-browser,Silverlight,Silverlight 3.0,Out Of Browser,Silverlight 3允许您运行应用程序,在桌面/开始菜单上安装一个链接 问题是我们目前正在使用 System.Windows.Browser.HtmlPage. Window.Navigate(new Uri("http://<server>/<resource>"), "_blank") System.Windows.Browser.HtmlPage。 导航(新Uri(“http://”)和“空白”) 将URL加载到新的浏览器窗口(为用户提供“打印友好”页

Silverlight 3允许您运行应用程序,在桌面/开始菜单上安装一个链接

问题是我们目前正在使用

System.Windows.Browser.HtmlPage.
  Window.Navigate(new Uri("http://<server>/<resource>"), "_blank")
System.Windows.Browser.HtmlPage。
导航(新Uri(“http://”)和“空白”)
将URL加载到新的浏览器窗口(为用户提供“打印友好”页面以供打印)。这在正常的SL in浏览器版本中有效,但在浏览器之外,我们会看到“DOM/脚本桥已禁用”。发出调用时引发异常

是否有一种在浏览器之外工作的替代方案


我已经看到了,但我需要完全在代码中完成这一点,所以我不想添加(隐藏的)超链接按钮,然后以编程方式“单击”它(除非我必须……。

您可以尝试从超链接按钮继承并公开public click()方法(然后可以从代码中实例化并调用该方法,而不是在xaml中声明它)。
这里的详细信息:

我基于继承HyperlinkButton的思想编写了一个扩展方法

public static class UriExtensions {

class Clicker : HyperlinkButton {
  public void DoClick() {
    base.OnClick();
  }
}

static readonly Clicker clicker = new Clicker();

public static void Navigate(this Uri uri) {
  Navigate(uri, "_self");
}

public static void Navigate(this Uri uri, string targetName) {
  clicker.NavigateUri = uri;
  clicker.TargetName = targetName;
  clicker.DoClick();
}
}
然后使用它可以简单的使用,就像


新Uri(“”)。导航(“”)为空

您的站点没有呈现此答案。应该在这里转载。