我正在使用RichTextBox
显示RTF文件,其中包含一个超链接。链接文本不是URL(目标 * 是 * 有效的URL)。RTF是用Word创建的。Word和写字板都能正确识别链接(写字板不启动链接,但显示相应的手形光标)。
当我将RTF加载到RichTextBox
中时,链接的格式显示正确(蓝色并带下划线),但它的行为与链接不同,当光标移到链接上时,它仍保持I形,LinkClicked
事件将不会触发,并且它实际上在链接后的尖括号中显示目标(这似乎不正确)。由于链接文本不是URL,DetectUrls
在这里没有帮助。RichTextBox
没有正确处理这些链接是否有原因,或者是否有方法使它们按预期工作?
下面是代码。
TipView.Rtf = tips[tipIndex];
// I've also tried TipView.LoadFile, with identical result
要重现此问题,请使用Word(我使用的是2000)创建一个RTF文档,其中包含一个链接,该链接的文本不是URL,但指向一个有效的URL,然后以编程方式将.rtf文件加载到RichTextBox
中(我在C# Express 2008中使用的是.NET 2.0)。
1条答案
按热度按时间vecaoik11#
要支持超链接,需要
RICHEDIT50W
version of "rich edit"。为此:
RichTextBox
中本机使用RICHEDIT50W
。RichTextBox
以使用RICHEDIT50W
:升级到
RICHEDIT50W
后,可能需要进行其他修复:Some hyperlinks don't trigger the LinkClicked event when loading a file into RichTextBox