TextChangedEventArgs.Changes Eigenschaft

Definition

Ruft eine Auflistung von Objekten ab, die Informationen zu den aufgetretenen Änderungen enthält.

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)

Eigenschaftswert

Eine Auflistung von Objekten, die Informationen zu den aufgetretenen Änderungen enthält.

Hinweise

Es gibt ein TextChange -Objekt für jede aufeinander folgende Änderung des Steuerelements. Während eines Ereignisses TextChanged können mehrere aufeinanderfolgende Änderungen auftreten, wenn die Änderung eine Änderung der Struktur des zugrunde liegenden Dokuments mit sich bringt.

Angenommen, ein RichTextBox enthält die Zeichenfolge "This is some text." Die Struktur des RichTextBox.Document ist <Paragraph><Run>This is some text.</Run></Paragraph>. Wenn der Benutzer die Wörter fett formatiert "is some", ändert sich die Struktur des zugrunde liegenden FlowDocument in <Paragraph><Run>This </Run><Run FontWeight="Bold">is some</Run><Run> text.</Run></Paragraph>. Es gibt tatsächlich vier Änderungen, die als Ergebnis der Aktion des Benutzers vorgenommen wurden:

  1. Das <Run> Symbol wird entfernt und vor dem Wort Thiserneut hinzugefügt.

  2. Die Symbole </Run><Run> werden nach dem Wort Thishinzugefügt.

  3. Die Symbole </Run><Run> werden nach dem Wort somehinzugefügt.

  4. Das </Run> Symbol wird entfernt und nach dem Wort Texterneut hinzugefügt.

Im Allgemeinen gilt immer Folgendes:

  • Die änderungen, die auftreten, führen dazu, dass sich das Dokument in einem gültigen Zustand befindet.

  • Die Auflistung wird nacheinander sortiert, bezieht sich auf den Ort, an dem die Änderung im Steuerelement aufgetreten ist. Beispielsweise befindet sich ein TextChange Objekt, das eine Änderung an Position 2 darstellt, vor einem TextChange Objekt, das eine Änderung an Position 10 darstellt.

  • Zwei TextChange Objekte stellen keinen überlappenden Bereich dar. Der Wert von Offset plus der Wert eines AddedLength Objekts TextChange ist immer kleiner oder gleich dem Wert des Offset nächsten TextChange Objekts in der Auflistung. Ebenso ist der Wert von Offset plus der Wert eines RemovedLength Objekts TextChange immer kleiner oder gleich dem Wert des Offset nächsten TextChange Objekts in der Auflistung.

  • Die Auflistung spiegelt alle vorgenommenen Änderungen wider, auch wenn es keine Nettoänderung zu geben scheint. Im vorherigen Beispiel führt weder die erste noch die vierte Änderung zu einer Nettoänderung, da jedes Symbol bzw. die <Run> Symbole einfach entfernt und </Run> erneut hinzugefügt hat. Die Symbole wurden jedoch entfernt und hinzugefügt, sodass sie in der Auflistung enthalten sind.

Wenn das TextChanged Ereignis als Ergebnis einer Eigenschaftsänderung auftritt, Changes ist eine leere Auflistung. Wenn der Benutzer im vorherigen Beispiel die gesamte Zeichenfolge fett formatiert, wird die FontWeight -Eigenschaft von Run auf Boldfestgelegt, aber nichts wird dem Dokument hinzugefügt oder daraus entfernt, also Changes leer.

Changeswird in der .NET Framework Version 3.5 eingeführt. Weitere Informationen finden Sie unter Versionen und Abhängigkeiten.

Gilt für: