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

标签 silverlight silverlight-4.0

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

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

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

更新

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

“要允许用户导航到其他网页,您可以使用 HyperlinkBut​​ton 控件并将 NavigateUri 属性设置为外部资源,并将 TargetName 属性设置为打开一个新的浏览器窗口。” --- MSDN, Silverlight - External navigation
<HyperlinkButton NavigateUri="http://www.microsoft.com" Content="Go to Microsoft" TargetName="_blank" />

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

最佳答案

你考虑过吗System.Windows.Browser.HtmlPage.PopupWindow(uri, "_blank", null)在 Silverlight 3 和 4 中?

除了最后一个空值,您还可以通过 HtmlPopupWindowOptions 设置一堆选项

关于Silverlight 打开 uri 链接被浏览器阻止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5964026/

相关文章:

c# - 将 ICollection 属性与 WCF 服务一起使用

silverlight - 如何将 BitmapImage/WriteableBitmap 保存为 png 格式(Silverlight/windows 手机)?

silverlight - 获取 "An entity with the same identity already exists in this EntitySet"但 EntitySet 为空

silverlight - 在 Silverlight 4 中创建 MVVM DataPager 的好方法是什么?

silverlight - 在 silverlight 中通过 HTTPS 绑定(bind)到 HTTP 图像

c# - 为什么 Silverlight 绑定(bind)不起作用?

silverlight - 如何在应用栏中集成枢轴控制?

Silverlight 4 WCF RIA 服务和 MVVM 没有那么简单

c# - Silverlight:将文件流式传输到新的 HTML 浏览器窗口以提示用户到 "open or save as..."?

visual-studio-2010 - 如何调整控件大小以适应 C#、Silverlight 4 中的浏览器窗口