c# - 在 wpf 应用程序中嵌入链接的最用户友好的方式是什么?

标签 c# .net wpf

我正在构建一个 WPF 应用程序,如果有可用的软件更新,我希望将用户发送到我们的网站。在 WPF 窗口中嵌入链接的最佳做法是什么?

一些子问题: 我可以包含一个可点击的 URL 吗?我应该在他们的网络浏览器中打开链接吗?如果是这样,什么样的命令会打开他们的默认网络浏览器?我是否应该在应用程序内包含导航控件,以便他们可以从那里下载更新?

最佳答案

部署将具有更新的应用程序的“教科书”答案是 ClickOnce 部署。来自 MSDN:ClickOnce 是一种部署技术,它允许您创建基于 Windows 的 self 更新应用程序,这些应用程序可以在最少的用户交互下安装和运行。 ClickOnce 部署克服了部署中固有的三个主要问题......

来自 http://msdn.microsoft.com/en-us/library/142dbbz4(v=vs.80).aspx

至于超链接,您可以考虑将它们添加到“帮助 | 关于”框中。一个例子是 Notepad++...

Hyperlinks in the About Box

添加超链接...

    <TextBlock>
        <Hyperlink NavigateUri="http://www.bbc.co.uk" Click="Hyperlink_Click" >BBC</Hyperlink>
    </TextBlock>

回调将是...

private void Hyperlink_Click(object sender, RoutedEventArgs e)
{
    Hyperlink hyperlink = sender as Hyperlink;
    if(hyperlink!=null)
    {
        Process.Start(hyperlink.NavigateUri.AbsoluteUri);
    }
}

这将打开默认浏览器并使其导航到链接地址。

关于c# - 在 wpf 应用程序中嵌入链接的最用户友好的方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8621513/

相关文章:

c# - 在 App.xaml.cs 的 OnStartup 中关闭第一个窗口后打开 C# WPF 第二个窗口

c# - 如何将图像与线条合并并将两者保存在文件中?

c# - 我怎样才能避免错误地更新当前对象上的另一个对象?

.net - 关于 CorDbg 和 Mdbg 的良好资源

c# - 运算符重载问题

c# - Serilog 依赖注入(inject)

wpf - 是否可以在 WPF 中使用 ReactiveUI 绑定(bind)仅通过 INotifyDataErrorInfo 验证用户输入?

c# - 如何在 C# 中对通用列表进行排序并允许 NULL 项目首先出现在列表中?

c# - .Net 核心 API 在 linux 机器上的监控

c# - 如果我选择不同的通用约束,为什么不能重载具有相同参数的方法?