博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows phone 巧用RichTextBox导航到外部url。
阅读量:5273 次
发布时间:2019-06-14

本文共 1376 字,大约阅读时间需要 4 分钟。

 RichTextBox 大家都熟悉了,可以用Hyperlink来加超链接。

  如下的代码就可以实现超链接。

Displaying text with
hyperlink
.

 

但是在windows phone中如果链接是外部的网址会导航失败,因为windows phone中要启动浏览器必须用WebBrowserTask。

OK 那么我们就来改造下使用WebBrowserTask吧,也许有人会说这个好办在 Hyperlink 的Click事件中启动一个WebBrowserTask

不就可以了么,恩不错这也是一个办法,但是你难道要处理每一个 Hyperlink 的Click事件么? 不,我们有另外的办法

其实导航失败的话在debug模式下导航失败会跳转到App.xaml.cs的void RootFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)函数。我们就在他里面改造吧。

void RootFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)         {
if (JDCommonFun.IsUrl(e.Uri.ToString())) {
WebBrowserTask task = new WebBrowserTask(); task.Uri = e.Uri; task.Show(); } else {
if (System.Diagnostics.Debugger.IsAttached) {
// A navigation has failed; break into the debugger System.Diagnostics.Debugger.Break(); } } }

上边还有个函数来匹配是否是url

public static bool IsUrl(string str_url)        {            return System.Text.RegularExpressions.Regex.IsMatch(str_url, @"http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?");        }

 

这样你 Hyperlink 的链接就可以启动了哦。

今天先写到这里,改天写写怎么识别一大堆文字中的url并且可以在RichTextBox 显示超链接。

 

转载于:https://www.cnblogs.com/jpwang/archive/2011/09/03/RichTextBox_url.html

你可能感兴趣的文章
网络流24题 飞行员配对方案问题
查看>>
剑指offer python版 调整数组顺序使奇数位于偶数前面
查看>>
Leader of All Crushing Machines in the Future
查看>>
设置dataGridView单元格颜色、字体、ToolTip、字体颜色
查看>>
wx-charts 微信小程序图表 -- radarChart C# .net .ashx 测试
查看>>
对项目重命名
查看>>
Scrapy框架简介及小项目应用
查看>>
tkinter学习三
查看>>
CentOS自带定时任务crontab
查看>>
基因组拼接中常见的名词解释
查看>>
##CS3动画效果
查看>>
nginx 配置 http重定向到https
查看>>
Linux vi/vim
查看>>
JS 设置复选框的选中与取消选中
查看>>
【京东咚咚架构演进】-- 好文收藏
查看>>
【BZOJ 3155】Preprefix sum(树状数组)
查看>>
【洛谷 2430】严酷的训练
查看>>
hadoop 使用java操作hdfs
查看>>
中年男人 中年女人 中年人
查看>>
GoFramework框架简介(三)通信机制篇
查看>>