如何解决使用RTF使超链接在RTF文本框中工作
我正在尝试使用RTF格式在RTF框中格式化超链接。借助answer,我可以使用基本的格式设置,例如将文本加粗。但是,我无法使RTF格式的超链接正常工作。我找到了建立RTF链接here的示例。但是,当我尝试将其放入“富文本框”(如下所示)时,它将导致我的应用程序崩溃。关于我在这里缺少什么的任何建议?
string my_hyperlink_text = @"{\field{\*\fldinst HYPERLINK \"http://www.google.com/\"}{\fldrslt Google}}"
if (rtbControl is RichTextBox & rtbControl.Name == "name_of_control") // Making sure the control is a RichTextBox
{
RichTextBox rtb = rtbControl as RichTextBox;
rtb.Rtf = my_hyperlink_text;
}
解决方法
使rtfs正常工作的一种简单方法是用Microsoft Word编写文本,将其复制并粘贴到Wordpad,然后从那里另存为RTF。 需要绕开MS Word,因为写字板虽然在来自其他来源(例如剪贴板)的链接时会正确处理,但不支持在UI中输入链接。此外,MS Word会创建大量的rtf。
通过这种方式创建的rtf文件可以在任何文本编辑器中打开,并且可以在程序中用作字符串常量。
在您的情况下,我想前缀和颜色表可能会丢失并导致问题。
顺便说一句:写字板不过是Windows rtf控件的包装,即与您在代码中使用的控件相同。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。