微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Silverlight打开uri链接被浏览器阻止

问题很简单但很烦人.我有一个按钮,点击事件只是打开一个链接

HtmlPage.Window.Navigate(uri,"_blank");

但它一直被浏览器阻止.我搜索了很多.似乎每个人都在使用这种方法,但没有人提到新的选项卡/窗口被阻止.所以我该怎么做?

UPDATE

问题解决了.似乎要导航到外部网页,应该使用HyperlinkBut​​ton.这不会被浏览器阻止.

“要启用用户导航到其他网页,您可以使用HyperlinkBut​​ton控件并将NavigateUri属性设置为外部资源,并设置TargetName属性以打开新的浏览器窗口.” — MSDN,Silverlight – External navigation

<HyperlinkButton NavigateUri="http://www.microsoft.com" Content="Go to Microsoft" TargetName="_blank" />

PS. HtmlPage.PopupWindow也被浏览器阻止.在我看来,没有用户手动禁用块,HtmlPage.Window.Navigate和HtmlPage.PopupWindow是无用的.

解决方法

您是否在Silverlight 3和4中考虑过System.Windows.browser.HtmlPage.PopupWindow(uri,“_ blank”,null)?

您也可以通过HtmlPopupWindowOptions设置一组选项,而不是最后一个空值

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐