DependencyObject.GetLocalValueEnumerator Yöntem

Tanım

Hangi bağımlılık özelliklerinin bu DependencyObjectüzerinde yerel olarak ayarlı değerlere sahip olduğunu belirlemek için özelleştirilmiş bir numaralandırıcı oluşturur.

public:
 System::Windows::LocalValueEnumerator GetLocalValueEnumerator();
public System.Windows.LocalValueEnumerator GetLocalValueEnumerator ();
member this.GetLocalValueEnumerator : unit -> System.Windows.LocalValueEnumerator
Public Function GetLocalValueEnumerator () As LocalValueEnumerator

Döndürülenler

LocalValueEnumerator

Özelleştirilmiş bir yerel değer numaralandırıcısı.

Örnekler

Aşağıdaki örnek, bir nesnede yerel değerleri ayarlanmış olan tüm özellikleri yineler ve ardından bu tür her özelliğin değerlerini temizlemek için çağrı ClearValue yapar.

void RestoreDefaultProperties(object sender, RoutedEventArgs e)
{
    UIElementCollection uic = Sandbox.Children;
    foreach (Shape uie in uic)
    {
        LocalValueEnumerator locallySetProperties = uie.GetLocalValueEnumerator();
        while (locallySetProperties.MoveNext())
        {
            DependencyProperty propertyToClear = locallySetProperties.Current.Property;
            if (!propertyToClear.ReadOnly) { uie.ClearValue(propertyToClear); }
        }
    }
}
Private Sub RestoreDefaultProperties(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim uic As UIElementCollection = Sandbox.Children
    For Each uie As Shape In uic
        Dim locallySetProperties As LocalValueEnumerator = uie.GetLocalValueEnumerator()
        While locallySetProperties.MoveNext()
            Dim propertyToClear As DependencyProperty = locallySetProperties.Current.Property
            If Not propertyToClear.ReadOnly Then
                uie.ClearValue(propertyToClear)
            End If
        End While
    Next
End Sub

Açıklamalar

Yerel değer, özellik sisteminin diğer yönlerinden farklı olarak tarafından SetValueayarlanan herhangi bir bağımlılık özelliği değeridir.

LocalValueEnumerator çağrısıyla GetLocalValueEnumerator elde edilen, bir örnekte yerel olarak ayarlanmış bir değere DependencyObject sahip özellikleri listelemek için kullanılabilir. Bu tür her özellik, belirli DependencyProperty ve değerlerine başvuran özelliklere sahip bir LocalValueEntry nesne tarafından numaralandırıcıda temsil edilir. Yerel olarak ayarlanan değerler üzerinde numaralandırma yapma tekniği, iyileştirme için veya yerel değerlerin işlenmesi için kullanılabilir; örneğin, temizlendiklerinde hangi özellik değerlerinin DependencyObject değişeceğini belirlemek için.

Önemli

Döndürülen LocalValueEnumerator , salt okunur olan bağımlılık özelliklerinin kayıtlarını veya değerlerin özellik sistemi tarafından hesaplandığı bağımlılık özelliklerini içerebilir LocalValueEntry . Örneğin, düzen aracılığıyla belirlenmiş genişliğe sahip bir görsel çerçeve öğesi için ActualWidthyerel bir değer bildirir. Sıfırlamak için yerel değerler alıyorsanız, söz konusu değerin ReadOnly salt okunur olmadığını doğrulamak DependencyProperty için her LocalValueEntry birinin özellik tanımlayıcısında bulunan değeri denetleyin.

Şunlara uygulanır

Ayrıca bkz.