我有一个特定的 UI 元素,单击它时应该导航到另一个 URL。我尝试处理鼠标按下事件并执行如下操作: System.Windows.Browser.HtmlPage.Window.Navigate(new Uri("http://google.com"), "_blank");
但是,除非我禁用弹出窗口阻止程序,否则这会被浏览器阻止(我尝试了 Chrome 和 Firefox)。我做了一些研究,似乎浏览器阻止了由于用户交互而不会发生的导航,并且就浏览器而言,此导航是由插件(Silverlight)而不是用户发起的。
好的,有道理。但后来我尝试使用 HyperlinkButton 并没有被阻止。
我想知道为什么这两种方法会从浏览器中得到不同的处理。任何想法?
我实际上通过使用 HyperLinkButton 包装导航触发 UI 来解决这个问题,但我仍然很好奇......