UIElement.Measure(Size) Yöntem
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.
öğesinin UIElementgüncelleştirmeleriDesiredSize. Üst öğeler, özyinelemeli bir düzen güncelleştirmesi oluşturmak için kendi MeasureCore(Size) uygulamalarından bu yöntemi çağırır. Bu yöntemin çağrılması, düzen güncelleştirmesinin ilk geçişini ("Ölçü" geçişi) oluşturur.
public:
void Measure(System::Windows::Size availableSize);
public void Measure (System.Windows.Size availableSize);
member this.Measure : System.Windows.Size -> unit
Public Sub Measure (availableSize As Size)
Parametreler
- availableSize
- Size
Üst öğenin alt öğe ayırabileceği kullanılabilir alan. Bir alt öğe kullanılabilir olandan daha büyük bir alan isteyebilir; geçerli öğenin içerik modelinde kaydırma mümkünse sağlanan boyut kabul edilebilir.
Açıklamalar
Windows Presentation Foundation (WPF) düzeni konumlandırma hesaplaması bir Measure çağrı ve bir Arrange çağrıdan oluşur. Measure Çağrı sırasında bir öğe, giriş kullanarak availableSize
boyut gereksinimlerini belirler. Arrange Çağrı sırasında öğe boyutu sonlandırılır.
availableSize
sıfırdan sonsuza kadar herhangi bir sayı olabilir. Düzene katılan öğeler, belirli availableSize
bir için gereken en düşük Size değeri döndürmelidir.
Bir düzen ilk örneklendiğinde, her zaman öncesinde Arrangebir Measure çağrı alır. Ancak, ilk düzen geçtikten sonra, olmadan bir Arrange çağrı alabilir; yalnızca etkileyen Arrange bir özellik değiştirildiğinde (hizalama gibi) veya üst öğesi olmadan Measurebir Arrange aldığında bu durum Measureoluşabilir. Arama Measure , bir çağrıyı otomatik olarak geçersiz kılacak Arrange .
Düzen güncelleştirmeleri zaman uyumsuz olarak gerçekleşir, böylece ana iş parçacığı her olası düzen değişikliğini beklemez. Özellik değerlerinin arka planda kod denetimi yoluyla bir öğenin sorgulanması, boyutlandırma veya düzen özellikleriyle (örneğin özelliği) etkileşim kuran özelliklerde Width yapılan değişiklikleri hemen yansıtmayabilir.
Not
Düzen güncelleştirmeleri yöntemi kullanılarak UpdateLayout zorlanabilir. Ancak, bu yöntemi çağırmak genellikle gereksizdir ve düşük performansa neden olabilir.
Düzen sistemi, biri için ve Arrangediğeri için Measure olan iki ayrı geçersiz düzen kuyruğu tutar. Düzen kuyruğu, düzen gerçekleştiren öğenin görsel ağacındaki öğelerin sırasına göre sıralanır; üst öğelerdeki yinelenen değişikliklerin neden olduğu yedekli düzenleri önlemek için ağacın üst kısmındaki öğeler kuyruğun en üstündedir. Yinelenen girdiler kuyruktan otomatik olarak kaldırılır ve öğeler zaten düzen doğrulamasına sahipse kuyruktan otomatik olarak kaldırılır.
Düzen güncelleştirilirken önce Measure kuyruk boşaltılır, ardından Arrange kuyruk eklenir. Kuyrukta Arrange bir öğe varsa kuyruktaki Measure bir öğe hiçbir zaman düzenlenemez.