C# 点击word上的行?

C# 点击word上的行?,c#,winforms,richtextbox,C#,Winforms,Richtextbox,所以我试着在谷歌上搜索这个,但没有找到任何有用的东西,或者至少没有任何东西可以帮助解决这个特定的场景。 基本上,我想做的是在richtextbox中有一个单词,它链接到同一richtextbox中其他地方的一行,这样当用户单击该单词时,它们就会被带到相关行 我考虑过存储每个链接单词的数组,其中包含索引和长度,用户每次导航文本框并在选中时滚动到链接行号时都会进行搜索,但这似乎不是很有效。我担心richtextbox不支持这种开箱即用的功能,所以你的建议实际上是一个很好的方法。为了提高性能,可以使用

所以我试着在谷歌上搜索这个,但没有找到任何有用的东西,或者至少没有任何东西可以帮助解决这个特定的场景。 基本上,我想做的是在richtextbox中有一个单词,它链接到同一richtextbox中其他地方的一行,这样当用户单击该单词时,它们就会被带到相关行


我考虑过存储每个链接单词的数组,其中包含索引和长度,用户每次导航文本框并在选中时滚动到链接行号时都会进行搜索,但这似乎不是很有效。

我担心richtextbox不支持这种开箱即用的功能,所以你的建议实际上是一个很好的方法。为了提高性能,可以使用字典查找所选链接。性能的影响应该不明显。

文本框中的数据是静态的还是动态的?您可以编辑它,但如果我可以让它暂时静态工作,而不考虑文本更改,那就好了。如果您可以将关键字转换为链接,则会出现linkclicked事件。也许您可以这样做,但是richtextbox可以自己识别链接,因此您必须访问www.keyword.com才能识别所有链接,这会造成混乱。好的,您能推荐一个支持此功能的自定义控件吗?@Twisted89-恐怕我没有发现任何链接。我没看过P看看Devexpress、Telerik和Infragistics——如果你能负担得起的话,它们是一些最好的控件的制造商。也许他们中的一个有。如果不是。。。好吧,你得靠自己了谷歌或者自己写。另外,一个有点疯狂的选择是使用类似于CKEditor的东西,托管在浏览器控件中。浏览器支持这样的链接-但我强烈怀疑性能会比您描述的简单解决方案差得多,更不用说所涉及的工作了…感谢您提供的信息,我会看看我能找到什么!