我想从我的Silverlight应用程序中打开一个新的窗口或选项卡。 如何强制指定目标类型(窗口/选项卡)? 现在,在调用以下代码时,它使用浏览器的默认设置:
HtmlPage.Window.Navigate(new Uri("http://www.google.com"), "_blank");
我正在使用上下文菜单来完成这个操作,希望能够获得与常规浏览器相同的结果,即“在新标签页中打开”和“在新窗口中打开”。 谢谢。
我想从我的Silverlight应用程序中打开一个新的窗口或选项卡。 如何强制指定目标类型(窗口/选项卡)? 现在,在调用以下代码时,它使用浏览器的默认设置:
HtmlPage.Window.Navigate(new Uri("http://www.google.com"), "_blank");
我正在使用上下文菜单来完成这个操作,希望能够获得与常规浏览器相同的结果,即“在新标签页中打开”和“在新窗口中打开”。 谢谢。
阅读有关 HtmlPage.PopupWindow()
的以下文章:
如果使用 Navigate
,则应该是 blank
而不是 _blank
。
或者您可以始终从 Silverlight 调用 JavaScript 函数。在 JavaScript 中创建一个带有 url 参数的函数,然后只需从 Silverlight 中调用它即可,例如:
HtmlPage.Window.Invoke("OpenMyNewWindow", new string[] { "http://www.google.com" });
Javascript函数:
function OpenMyNewWindow(url)
{
window.open(url, "nameOfWindow");
}
这可能是最繁琐的方法,但它具有很高的灵活性,可以做其他事情,并可能获得选项卡/窗口的正确感觉。至于指定选项卡或窗口,我认为你不能这样做,因为这是特定于浏览器的,并且可能因使用的浏览器而异。