2011-04-06 63 views
0

在.Net 4中使用WPF,我在窗口內創建了一個小型WPF RichTextBox。我已經成功地抓住了RichTextBox的TextChangedEvent事件,並且我可以遍歷TextChangedEventArgs提供的更改數組。WPF RichTextBox TextChangedEvent - 查找最近段落開始

我使用的是在這裏找到的代碼: Best way to implement a Parsing/Editable Richtextbox in WPF

好了,說我輸入字母「A」到在運行時的RichTextBox中,並有TextChangedEvent中斷點,以檢查的內容RichTextBox使用調試器。我想,然後執行以下操作:

string sa = range.Start.Paragraph.ContentStart.GetTextInRun(LogicalDirection.Forward); 

但問題是,「山」始終是一個空字符串不管我把到RichTextBox在運行時。相對於給定的改變,不應該是從段落開頭開始的字符串嗎?還是應該使用除range.Start.Paragraph.ContentStart之外的其他內容?

回答

0

就想通了......我不得不創建一個使用該段ContentStart和ContentEnd的新TextRange,就像這樣:

var range2 = new TextRange(range.Start.Paragraph.ContentStart, range.Start.Paragraph.ContentEnd);