TextChangedEventArgs.Changes Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Gerçekleşen değişiklikler hakkında bilgi içeren bir nesne koleksiyonu alır.
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)
Özellik Değeri
Gerçekleşen değişiklikler hakkında bilgi içeren bir nesne koleksiyonu.
Açıklamalar
Denetimde ardışık yapılan her değişiklik için bir TextChange nesne vardır. Değişiklik, temel alınan belgenin TextChanged yapısını değiştirmeyi gerektirdiğinde, olayın bir oluşumu sırasında birden fazla ardışık değişiklik meydana gelebilir.
Örneğin, bir RichTextBox dizesinin "This is some text."
içerdiğini varsayalım: öğesinin RichTextBox.Document yapısı: <Paragraph><Run>This is some text.</Run></Paragraph>
. Kullanıcı sözcüklerini "is some"
kalın yaparsa, temel alınan FlowDocument öğesinin yapısı olarak <Paragraph><Run>This </Run><Run FontWeight="Bold">is some</Run><Run> text.</Run></Paragraph>
değişir. Aslında kullanıcının eyleminin sonucu olarak gerçekleşen dört değişiklik vardır:
<Run>
simgesi kaldırılır ve sözcüğündenThis
önce yeniden eklenir.Simgeler
</Run><Run>
sözcüğündenThis
sonra eklenir.Simgeler
</Run><Run>
sözcüğündensome
sonra eklenir.</Run>
simgesi kaldırılır ve sözcüğündenText
sonra yeniden eklenir.
Genel olarak, aşağıdakiler her zaman doğru olacaktır:
Gerçekleşen değişiklikler, belgenin geçerli bir durumda olmasına neden olur.
Koleksiyon, değişikliğin denetimde nerede gerçekleştiğiyle ilgili olarak art arda sıralanır. Örneğin, 2 konumundaki bir değişikliği temsil eden bir TextChange nesne, 10 konumundaki bir değişikliği temsil eden nesneden öncedir TextChange .
İki TextChange nesne çakışan bir alanı temsil etmemelidir. Bir TextChange nesnenin artı değerinin AddedLength değeri Offset her zaman koleksiyondaki bir sonraki TextChange nesnenin Offset değerinden küçük veya buna eşit olur. Benzer şekilde, Offset bir TextChange nesnenin artı değeri RemovedLength her zaman koleksiyondaki bir sonraki TextChange nesnenin Offset değerinden küçük veya buna eşit olur.
Koleksiyon, net bir değişiklik yokmuş gibi görünse bile gerçekleşen değişiklikleri yansıtır. Yukarıdaki örnekte, ilk veya dördüncü değişiklik net bir değişiklikle sonuçlanmadığından, her biri sırasıyla ve
</Run>
simgelerini kaldırıp yeniden eklemektedir<Run>
. Ancak simgeler aslında kaldırıldı ve eklendi, bu nedenle koleksiyona dahil edildiler.
TextChanged Olay bir özellik değişikliğinin sonucu olarak gerçekleşirse, Changes boş bir koleksiyondur. Yukarıdaki örnekte, kullanıcı dizenin tamamını kalın yazarsa, FontWeight özelliğinin Run ayarı olarak ayarlanır Bold, ancak belgeden hiçbir şey eklenmez veya kaldırılmaz, bu nedenle Changes boş olur.
Changes.NET Framework sürüm 3.5'te kullanıma sunulmuştur. Daha fazla bilgi için bkz . Sürümler ve Bağımlılıklar.