Sdílet prostřednictvím


TextChangedEventArgs.Changes Vlastnost

Definice

Získá kolekci objektů, která obsahuje informace o změnách, ke kterým došlo.

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)

Hodnota vlastnosti

Kolekce objektů, která obsahuje informace o změnách, ke kterým došlo.

Poznámky

Pro každou po sobě jdoucí změnu ovládacího prvku je jeden TextChange objekt. Během jednoho výskytu TextChanged události může dojít k více než jedné po sobě jdoucí změně, pokud změna zahrnuje změnu struktury podkladového dokumentu.

Předpokládejme například, že obsahuje RichTextBox řetězec "This is some text." . Struktura objektu RichTextBox.Document je <Paragraph><Run>This is some text.</Run></Paragraph>. Pokud uživatel zadá slova "is some"tučně , struktura podkladového FlowDocument objektu se změní na <Paragraph><Run>This </Run><Run FontWeight="Bold">is some</Run><Run> text.</Run></Paragraph>. V důsledku akce uživatele došlo ve skutečnosti ke čtyřem změnám:

  1. Symbol <Run> se odebere a znovu přidá před slovo This.

  2. Symboly </Run><Run> se přidají za slovo This.

  3. Symboly </Run><Run> se přidají za slovo some.

  4. Symbol </Run> se odebere a znovu se přidá za slovo Text.

Obecně platí vždy následující:

  • Změny, ke kterým dojde, způsobí, že dokument bude v platném stavu.

  • Kolekce je seřazena po sobě, podle toho, kde došlo ke změně v ovládacím prvku. Například objekt, TextChange který představuje změnu na pozici 2, je před objektem TextChange , který představuje změnu na pozici 10.

  • Dva TextChange objekty nepředstavují překrývající se oblast. Hodnota Offset plus hodnota AddedLength jednoho TextChange objektu je vždy menší nebo rovna hodnotě dalšího OffsetTextChange objektu v kolekci. Stejně tak hodnota Offset plus hodnota RemovedLength jednoho TextChange objektu je vždy menší nebo rovna hodnotě dalšího OffsetTextChange objektu v kolekci.

  • Kolekce odráží všechny změny, ke kterým došlo, i když se zdá, že nedošlo k žádné čisté změně. V předchozím příkladu nemá ani první ani čtvrtá změna za následek čistou změnu, protože každá z nich jednoduše odebrala a znovu přidala <Run> symboly a </Run> . Symboly se ale ve skutečnosti odebraly a přidaly, takže jsou součástí kolekce.

Pokud k TextChanged události dojde v důsledku změny vlastnosti, Changes je prázdná kolekce. V předchozím příkladu, pokud uživatel tučným písmem celý řetězec, FontWeight vlastnost objektu Run je nastavena na Bold, ale nic se nepřidá ani neodebere z dokumentu, takže Changes je prázdná.

Changes je zaveden v rozhraní .NET Framework verze 3.5. Další informace najdete v tématu Verze a závislosti.

Platí pro