2012-05-01 136 views
1

我正在使用richtextbox顯示用MS Word創建的RTF文檔 我需要顯示文檔的內容,如MS Word中的「文檔模式」,它使用樣式標籤「\」創建模式 。 s [樣式數量]「 我有一個問題,當我在richtextbox中加載我的文件時發生此問題。試圖獲得RTF文本只有 返回已知標記,省略所有未知的標記。 我用下面的代碼加載RichTextBox刪除未知標籤

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); 

如何從我的源文件中獲取所有標籤?

回答

-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); 
+0

感謝您停止投票而不是評論爲什麼:/ –