TextChangedEventArgs.Changes Propriedade

Definição

Obtém uma coleção de objetos que contém informação sobre as alterações que ocorreram.

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 Propriedade

Uma coleção de objetos que contém informações sobre as alterações que ocorreram.

Observações

Existe um TextChange objeto para cada alteração consecutiva no controlo. Mais do que uma alteração consecutiva pode ocorrer durante uma ocorrência do TextChanged evento quando a alteração implica alterar a estrutura do documento subjacente.

Por exemplo, suponha que a RichTextBox contém a cadeia "This is some text." A estrutura da RichTextBox.Document é <Paragraph><Run>This is some text.</Run></Paragraph>. Se o utilizador colocar "is some"as palavras a negrito , a estrutura subjacente FlowDocument muda para <Paragraph><Run>This </Run><Run FontWeight="Bold">is some</Run><Run> text.</Run></Paragraph>. Na verdade, ocorreram quatro alterações como resultado da ação do utilizador:

  1. O <Run> símbolo é removido e readicionado antes da palavra This.

  2. Os símbolos </Run><Run> são adicionados após a palavra This.

  3. Os símbolos </Run><Run> são adicionados após a palavra some.

  4. O </Run> símbolo é removido e readicionado após a palavra Text.

Em geral, o seguinte será sempre verdadeiro:

  • As alterações que ocorrem resultam em que o documento fique num estado válido.

  • A coleção está ordenada consecutivamente, relacionada com o local onde ocorreu a alteração no controlo. Por exemplo, um TextChange objeto que representa uma mudança na posição 2 está diante de um TextChange objeto que representa uma mudança na posição 10.

  • Dois TextChange objetos não representam uma área sobreposta. O valor de Offset mais o valor de AddedLength de um TextChange objeto é sempre menor ou igual ao valor de Offset do objeto seguinte TextChange na coleção. Da mesma forma, o valor de Offset mais o valor de RemovedLength de um TextChange objeto é sempre menor ou igual ao valor de Offset do objeto seguinte TextChange na coleção.

  • A coleção reflete quaisquer alterações ocorridas, mesmo que pareça não haver qualquer alteração líquida. No exemplo anterior, nem a primeira nem a quarta alteração resultam numa alteração líquida, porque cada uma simplesmente removeu e voltou a adicionar os <Run> símbolos e </Run> de , respetivamente. Mas os símbolos foram na verdade removidos e adicionados, por isso estão incluídos na coleção.

Se o TextChanged evento ocorrer como resultado de uma alteração de propriedade, Changes é uma coleção vazia. No exemplo anterior, se o utilizador colocar toda a cadeia a negrito, a FontWeight propriedade de é Run definida para Bold, mas nada é adicionado ou removido do documento, por isso Changes fica vazio.

Changes é introduzido na versão 3.5 do .NET Framework. Para mais informações, consulte Versões e Dependências.

Aplica-se a