Share via


Comment : extraire le texte d'un RichTextBox

Mise à jour : novembre 2007

Cet exemple montre comment extraire le contenu d'un RichTextBox sous la forme d'un texte brut.

Exemple

Le code XAML (Extensible Application Markup Language) suivant décrit un contrôle nommé RichTextBox avec du contenu simple.

<RichTextBox Name="richTB">
  <FlowDocument>
    <Paragraph>
      <Run>Paragraph 1</Run>
    </Paragraph>
    <Paragraph>
      <Run>Paragraph 2</Run>
    </Paragraph>
    <Paragraph>
      <Run>Paragraph 3</Run>
    </Paragraph>
  </FlowDocument>
</RichTextBox>

Le code suivant implémente une méthode qui prend une RichTextBox comme argument et retourne une chaîne qui représente le contenu de texte brut de la RichTextBox.

La méthode crée un TextRange à partir du contenu de la RichTextBox, à l'aide du ContentStart et de la ContentEnd pour indiquer la plage de contenu à extraire. Les propriétés ContentStart et ContentEnd retournent chacune un TextPointer et elles sont accessibles dans le FlowDocument sous-jacent qui représente le contenu de la RichTextBox. TextRange fournit une propriété Text qui retourne les parties de texte ordinaire de la TextRange sous la forme d'une chaîne.

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

Voir aussi

Concepts

Vue d'ensemble de RichTextBox

Vue d'ensemble de TextBox