TextChangedEventArgs.Changes Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera kolekcję obiektów, które zawierają informacje o zmianach, które wystąpiły.
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)
Wartość właściwości
Kolekcja obiektów zawierających informacje o zmianach, które wystąpiły.
Uwagi
Istnieje jeden TextChange obiekt dla każdej kolejnej zmiany kontrolki. Podczas jednego wystąpienia TextChanged zdarzenia może wystąpić więcej niż jedna kolejna zmiana, gdy zmiana pociąga za sobą zmianę struktury dokumentu bazowego.
Załóżmy na przykład, że element RichTextBox zawiera ciąg "This is some text."
Struktura obiektu RichTextBox.Document to <Paragraph><Run>This is some text.</Run></Paragraph>
. Jeśli użytkownik pogrubia wyrazy "is some"
, struktura bazowego FlowDocument zmienia się na <Paragraph><Run>This </Run><Run FontWeight="Bold">is some</Run><Run> text.</Run></Paragraph>
. Istnieją cztery zmiany, które miały miejsce w wyniku akcji użytkownika:
Symbol
<Run>
zostanie usunięty i dodany ponownie przed wyrazemThis
.Symbole
</Run><Run>
są dodawane po słowieThis
.Symbole
</Run><Run>
są dodawane po słowiesome
.Symbol
</Run>
zostanie usunięty i dodany ponownie po słowieText
.
Ogólnie rzecz biorąc, zawsze będą spełnione następujące warunki:
Zmiany, które występują, powodują, że dokument jest w prawidłowym stanie.
Kolekcja jest kolejna, powiązana z miejscem, w którym nastąpiła zmiana w kontrolce. Na przykład obiekt reprezentujący TextChange zmianę na pozycji 2 jest przed obiektem TextChange reprezentującym zmianę na pozycji 10.
Dwa TextChange obiekty nie reprezentują nakładającego się obszaru. Wartość Offset plus wartość AddedLength jednego TextChange obiektu jest zawsze mniejsza lub równa wartości Offset następnego TextChange obiektu w kolekcji. Podobnie wartość Offset plus wartość RemovedLength jednego TextChange obiektu jest zawsze mniejsza lub równa wartości Offset następnego TextChange obiektu w kolekcji.
Kolekcja odzwierciedla zmiany, nawet jeśli wydaje się, że nie ma żadnych zmian netto. W poprzednim przykładzie żadna pierwsza lub czwarta zmiana nie powoduje zmiany netto, ponieważ każda po prostu usunęła i ponownie dodała
<Run>
odpowiednio symbole i</Run>
. Symbole zostały jednak w rzeczywistości usunięte i dodane, więc są one uwzględnione w kolekcji.
TextChanged Jeśli zdarzenie występuje w wyniku zmiany właściwości, Changes jest pustą kolekcją. W poprzednim przykładzie, jeśli użytkownik pogrubi cały ciąg, FontWeight właściwość Run obiektu jest ustawiona na Bold, ale nic nie zostanie dodane lub usunięte z dokumentu, więc Changes jest puste.
Changesjest wprowadzana w .NET Framework w wersji 3.5. Aby uzyskać więcej informacji, zobacz Wersje i zależności.