TextChangedEventArgs.Changes Propriété

Définition

Obtient une collection d'objets qui contient des informations sur les modifications effectuées.

public:
 property System::Collections::Generic::ICollection<System::Windows::Controls::TextChange ^> ^ Changes { System::Collections::Generic::ICollection<System::Windows::Controls::TextChange ^> ^ get(); };
public System.Collections.Generic.ICollection<System.Windows.Controls.TextChange> Changes { get; }
member this.Changes : System.Collections.Generic.ICollection<System.Windows.Controls.TextChange>
Public ReadOnly Property Changes As ICollection(Of TextChange)

Valeur de propriété

Collection d'objets qui contient des informations sur les modifications effectuées.

Remarques

Il existe un TextChange objet pour chaque modification consécutive du contrôle. Plusieurs modifications consécutives peuvent se produire lors d’une occurrence de l’événement TextChanged lorsque la modification implique la modification de la structure du document sous-jacent.

Par exemple, supposons qu’un RichTextBox contient la chaîne "This is some text." La structure du RichTextBox.Document est <Paragraph><Run>This is some text.</Run></Paragraph>. Si l’utilisateur met en gras les mots "is some", la structure du sous-jacent FlowDocument devient <Paragraph><Run>This </Run><Run FontWeight="Bold">is some</Run><Run> text.</Run></Paragraph>. En fait, quatre modifications ont eu lieu à la suite de l’action de l’utilisateur :

  1. Le <Run> symbole est supprimé et rajouté avant le mot This.

  2. Les symboles sont ajoutés </Run><Run> après le mot This.

  3. Les symboles sont ajoutés </Run><Run> après le mot some.

  4. Le </Run> symbole est supprimé et rajouté après le mot Text.

En général, les conditions suivantes sont toujours remplies :

  • Les modifications qui se produisent entraînent la validité du document.

  • La collection est ordonnée consécutivement, en rapport avec l’endroit où la modification s’est produite dans le contrôle. Par exemple, un TextChange objet qui représente une modification à la position 2 se trouve avant un TextChange objet qui représente une modification à la position 10.

  • Deux TextChange objets ne représentent pas une zone qui se chevauche. La valeur de Offset plus la valeur d’un TextChangeAddedLength objet est toujours inférieure ou égale à la valeur de Offset l’objet suivant TextChange de la collection. De même, la valeur de Offset plus la valeur de RemovedLength d’un TextChange objet est toujours inférieure ou égale à la valeur de Offset l’objet suivant TextChange dans la collection.

  • La collection reflète les modifications qui se sont produites, même s’il semble n’y avoir aucune modification nette. Dans l’exemple précédent, ni la première ni la quatrième modification n’entraînent un changement net, car chacun d’eux a simplement supprimé et ajouté à nouveau les <Run> symboles et </Run> , respectivement. Mais les symboles ont été supprimés et ajoutés, de sorte qu’ils sont inclus dans la collection.

Si l’événement TextChanged se produit à la suite d’une modification de propriété, Changes est une collection vide. Dans l’exemple précédent, si l’utilisateur met en gras la chaîne entière, la FontWeight propriété du Run est définie sur Bold, mais rien n’est ajouté ou supprimé du document, donc Changes vide.

Changes est introduit dans le .NET Framework version 3.5. Pour plus d’informations, consultez Versions et dépendances.

S’applique à