1

我正在使用 Richtextbox 显示使用 MS Word 创建的 rtf 文档我需要显示文档的内容,例如 MS Word 中的“文档架构”,它通过使用样式标签“\s [样式数]”创建架构我有一个问题,当我在富文本框中加载我的文件时发生。尝试获取 RTF 文本仅返回已知标签,忽略所有未知标签。我使用以下代码加载文件

MemoryStream stream = new MemoryStream(Encoding.Default.GetBytes(file));
rtbViewer.Selection.Load(stream,DataFormats.Rtf);
stream.Close();

我已经设法通过输入字符串文件的正则表达式搜索来制作内容。我获取源文件并在字符串中获取其文本(它将包含所有 rtf 标签),然后搜索样式标签并获取有关级别和文本的信息。只要用户不更改文本然后尝试保存它,一切都很好。问题是当我在richtextbox 中加载文件时,我错过了有关内容的所有信息。当我尝试保存更改的文档时,我从richtextbox 获取 Rtf 文本,但它不包含样式标签。

MemoryStream ms = new MemoryStream();
rtbViewer.Selection.Save(ms, DataFormats.Rtf);

如何从源文件中获取所有标签?

4

1 回答 1

-1

这对我有用。

<RichTextBox Height="100" HorizontalAlignment="Left" Margin="306,30,0,0" Name="rtfMain"        VerticalAlignment="Top" Width="200" />

rtfMain.Selection.Load(new FileStream(@"C:\temp\document.rtf", FileMode.Open), DataFormats.Rtf);
于 2012-10-18T23:22:15.007 回答