在RichTextBox中查找字体样式的char索引

时间:2010-07-28 13:28:32

标签: c# winforms richtextbox

我正在寻找一种在RichTextBox中查找不同字体样式的字符索引的有效方法。我有以下内容:

for (var i = 0; i < index; i++)
{
   _activeCopyBox.Select(i, 1);

   if (!linkFound && _activeCopyBox.SelectionFont.Underline)
      underLineFound = true;
}

但这很慢,因为它必须一次选择一个字母。我可以从Rft中获取格式,但是试图通过这种方式找到正确的字符索引很麻烦。

如果有人知道更好的方式(必须有一个),我很乐意听到它。

提前致谢。

1 个答案:

答案 0 :(得分:0)

我认为您需要.Rtf属性,这会为您提供基础RTF信息,包括所有特殊标记,以及最终加下划线和粗体,以及格式化RichTextBox中的信息。

这是一个指向RTF标记的链接,可能会更有效地帮助您尝试做什么:

http://msdn.microsoft.com/en-us/library/aa140277%28office.10%29.aspx

搜索“下划线”和“粗体”,您将看到它是如何工作的。最有可能需要使用正则表达式来快速有效地获取您想要的信息。