2008-12-04 95 views
0

几个小时前,我发现使用标准.net 2.0 winforms控件(RichTextBox)显示* .rtf文件非常简单。它甚至可以显示图片,这真的很酷,但对我来说,有一个缺失的功能 - 超链接。 我准备了* .rtf文档,并在文档中使用了几段超链接指向段落。然后我把这个文件放入资源并加载到控件的rtf属性中,但不幸的是,点击链接不起作用。 是否有可能发生黑客或解决方法来启用超链接?rtftextbox和文件内部的超链接/锚点

编辑:

我的客户将准备一个简短的文件(让我们说一个* .docx文件或一个* .html文件)。

它将包含几个章节,我们希望在文档的顶部放置小目录。

预期的行为是用户单击主题,控件将其内容滚动到文档中的所需位置。

所以也许它不是关于链接,而是关于书签。


好的,我会尽力描述所需解决方案的大部分内容。

我的客户会准备一个短文档(比如说一个* .docx文件或一个* .html文件)。

它将包含几个章节,我们希望在文档的顶部放置小目录。

预期的行为是用户单击主题,控件将其内容滚动到文档中的所需位置。

所以也许它不是关于链接,而是关于书签。

回答

1

你的链接是如何格式化的并且是DetectUrl是真的?

从codeproject - >只有从其中一个识别的协议开始的链接(http :, file :, mailto :, ftp :, https :, gopher :, nntp :, prospero:,telnet :, news :, wais: ,outlook :)被识别并重新格式化。

http://www.codeproject.com/KB/edit/RichTextBoxLinks.aspx

http://msdn.microsoft.com/en-us/library/system.windows.forms.richtextbox.detecturls(VS.80).aspx

微软的文章对LinkClicked事件的示例。

private void Link_Clicked (object sender, System.Windows.Forms.LinkClickedEventArgs e) 
{ 
    System.Diagnostics.Process.Start(e.LinkText); 
}