HOW TO:擷取 RichTextBox 的文字內容
更新:2007 年 11 月
本範例示範如何以純文字格式擷取 RichTextBox 的內容。
範例
下列可延伸標記語言 (XAML) 程式碼描述具有簡單內容的具名 RichTextBox 控制項。
<RichTextBox Name="richTB">
<FlowDocument>
<Paragraph>
<Run>Paragraph 1</Run>
</Paragraph>
<Paragraph>
<Run>Paragraph 2</Run>
</Paragraph>
<Paragraph>
<Run>Paragraph 3</Run>
</Paragraph>
</FlowDocument>
</RichTextBox>
下列程式碼會實作使用 RichTextBox 當做引數的方法,並傳回表示 RichTextBox 之純文字內容的字串。
此方法會使用 ContentStart 和 ContentEnd 指定要擷取的內容範圍,藉以從 RichTextBox 的內容建立新的 TextRange。ContentStart 和 ContentEnd 屬性都會傳回 TextPointer,而且都可以在表示 RichTextBox 內容的基礎 FlowDocument 上存取。TextRange 提供一個 Text 屬性,此屬性會以字串形式傳回 TextRange 的純文字部分。
string StringFromRichTextBox(RichTextBox rtb)
{
TextRange textRange = new TextRange(
// TextPointer to the start of content in the RichTextBox.
rtb.Document.ContentStart,
// TextPointer to the end of content in the RichTextBox.
rtb.Document.ContentEnd
);
// The Text property on a TextRange object returns a string
// representing the plain text content of the TextRange.
return textRange.Text;
}