我如何知道TextRange是否包含超链接?

时间:2011-08-29 18:34:43

标签: c# wpf richtextbox

我尝试使用TextRange.GetPropertyValue(DependencyProperty),但我找不到将特定范围标识为超链接的de Dependency Property。

如果没有TextRange,那么无论如何都要查找RichTextBox中的选定文本是否是超链接?

谢谢:)


找到一个不是我想要的答案,但仍能很好地运作。

Here就是答案。这是GetHyperlinkAncestor方法。希望它能帮助其他人:)

1 个答案:

答案 0 :(得分:0)

最简单的方法是创建一个“try catch”并在try中插入此代码。 Hyperlink link = new Hyperlink(); link.NavigateUri = new Uri(link);如果您收到异常,则它不是有效的超链接。你只需要处理异常,这样程序就不会死。

如果字符串以“http://”开头,也可以通过测试字符串手动完成。这样做是这样的: `for(int i = 0; i

//Do something here
//And to chech the end of the link
if(link[link.lenght-1] == 'm' && link[link.lenght-2] == 'o' && link[link.length-3] == 'c'...
    //Do something

}`

我希望你能用这个。如果没有,那么就有可能检查链接。