Condividi tramite


Modifica della selezione a livello di codice in un oggetto RichTextBox

Aggiornamento: novembre 2007

In questo esempio viene illustrato come cambiare a livello di codice la selezione corrente in un oggetto RichTextBox. Tale selezione equivale all'operazione di scelta del contenuto tramite l'utilizzo dell'interfaccia utente.

Esempio

Nel codice Extensible Application Markup Language (XAML) riportato di seguito viene descritto un controllo RichTextBox denominato con contenuto semplice.

<Page xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
  x:Class="SDKSample.ChangeSelectionProgrammaticaly" >

  <StackPanel>
    <RichTextBox GotMouseCapture="ChangeSelection" Name="richTB">
      <FlowDocument>
        <Paragraph Name="myParagraph">
          <Run>
            When the user clicks in the RichTextBox, the selected
            text changes programmatically.
          </Run>
        </Paragraph>
      </FlowDocument>
    </RichTextBox>
  </StackPanel>

</Page>

Nell'esempio di codice riportato di seguito viene selezionato a livello di codice del testo arbitrario quando si fa clic nell'oggetto RichTextBox.

using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;

namespace SDKSample
{
    public partial class ChangeSelectionProgrammaticaly : Page
    {

        // Change the current selection.
        void ChangeSelection(Object sender, RoutedEventArgs args)
        {
            // Create two arbitrary TextPointers to specify the range of content to select.
            TextPointer myTextPointer1 = myParagraph.ContentStart.GetPositionAtOffset(20);
            TextPointer myTextPointer2 = myParagraph.ContentEnd.GetPositionAtOffset(-10);

            // Programmatically change the selection in the RichTextBox.
            richTB.Selection.Select(myTextPointer1, myTextPointer2);
        }
    }
}

Vedere anche

Concetti

Cenni generali sul controllo RichTextBox

Cenni preliminari sulla classe TextBox