TextChangedEventArgs.Changes Propiedad

Definición

Obtiene una colección de objetos que contiene información sobre los cambios efectuados.

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)

Valor de propiedad

Colección de objetos que contiene información sobre los cambios efectuados.

Comentarios

Hay un TextChange objeto para cada cambio consecutivo en el control. Puede producirse más de un cambio consecutivo durante una aparición del TextChanged evento cuando el cambio implica cambiar la estructura del documento subyacente.

Por ejemplo, supongamos que contiene RichTextBox la cadena "This is some text." La estructura de RichTextBox.Document es <Paragraph><Run>This is some text.</Run></Paragraph>. Si el usuario en negrita las palabras "is some", la estructura de los cambios subyacentes FlowDocument en <Paragraph><Run>This </Run><Run FontWeight="Bold">is some</Run><Run> text.</Run></Paragraph>. En realidad, hay cuatro cambios que tuvieron lugar como resultado de la acción del usuario:

  1. El <Run> símbolo se quita y se vuelve a agregar antes de la palabra This.

  2. Los símbolos </Run><Run> se agregan después de la palabra This.

  3. Los símbolos </Run><Run> se agregan después de la palabra some.

  4. El </Run> símbolo se quita y se vuelve a agregar después de la palabra Text.

En general, lo siguiente siempre será true:

  • Los cambios que se producen dan como resultado que el documento esté en un estado válido.

  • La colección se ordena consecutivamente, relacionada con dónde se produjo el cambio en el control. Por ejemplo, un TextChange objeto que representa un cambio en la posición 2 es anterior a un TextChange objeto que representa un cambio en la posición 10.

  • Dos TextChange objetos no representan un área superpuesta. El valor de Offset más el valor de AddedLength un TextChange objeto siempre es menor o igual que el valor del Offset siguiente TextChange objeto de la colección. Del mismo modo, el valor de Offset más el valor de RemovedLength un TextChange objeto siempre es menor o igual que el valor del Offset siguiente TextChange objeto de la colección.

  • La colección refleja los cambios que se hayan producido, incluso si parece que no hay ningún cambio neto. En el ejemplo anterior, ninguno de los cambios primero o cuarto da como resultado un cambio neto, ya que cada uno simplemente quita y vuelve a agregar los <Run> símbolos y </Run> , respectivamente. Pero los símbolos se quitaron y agregaron realmente, por lo que se incluyen en la colección.

Si el TextChanged evento se produce como resultado de un cambio de propiedad, Changes es una colección vacía. En el ejemplo anterior, si el usuario en negrita toda la cadena, la FontWeight propiedad de Run se establece Bolden , pero no se agrega ni quita nada del documento, por lo que Changes está vacía.

Changes se presenta en la versión 3.5 de .NET Framework. Para más información, vea Versiones y dependencias.

Se aplica a