首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HyperlinkButton NavigateUri在Safari中不起作用

HyperlinkButton NavigateUri在Safari中不起作用
EN

Stack Overflow用户
提问于 2018-04-18 18:09:33
回答 1查看 88关注 0票数 0

我在c#代码中使用HyperLinkButton和add方法为他单击。

编码方法:

代码语言:javascript
复制
void btnViewURL_Click(object sender, RoutedEventArgs e)
{
         if (string.IsNullOrWhiteSpace(viewURL) == false
         && this.decisionViewModel.IsURLValid(viewURL))
         {
             System.Windows.Browser.HtmlPage.Window.Navigate(new Uri(viewURL, UriKind.Absolute), "_blank");
         }
}

此代码在ie中有效,但在Safari中不起作用。

在我尝试在xaml中使用NavigateUrl属性之后。我添加了绑定,但此方法在Safari中不起作用。如果我设置了纯文本url (例如-没有绑定的"https://google.com“,那么Safari打开了链接。

代码语言:javascript
复制
<HyperlinkButton Margin="8,0,0,0" x:Name="linkStaticURL" 
    NavigateUri="{Binding viewURL}"
    TargetName="_blank">
                <TextBlock Text="Reader"</TextBlock>
</HyperlinkButton>

我该如何解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2018-04-18 21:01:43

您可以使用Process.Start在默认浏览器中打开该网址:

代码语言:javascript
复制
void btnViewURL_Click(object sender, RoutedEventArgs e)
{
    if (string.IsNullOrWhiteSpace(viewURL) == false)
      && this.decisionViewModel.IsURLValid(viewURL))
    {
        System.Diagnostics.Process.Start(viewURL);
    }
}

如果您要启动特定的web浏览器,您可以将其位置传递给此处建议的相同方法:

Launch Web URL in NON-default browser

除了设置NavigateUri之外,您还应该处理RequestNavigate事件:

Example using Hyperlink in WPF

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49896984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档