This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

DependencyObject.InvalidateProperty أسلوب

Visual Studio 2010

re-evaluates القيمة فعال لتبعية محددة خاصية

مساحة الاسم:  System.Windows
التجميع:  WindowsBase (في WindowsBase.dll)

public void InvalidateProperty(
	DependencyProperty dp
)

المعلمات

dp
النوع: System.Windows.DependencyProperty
DependencyProperty معرّف خاصية إلى إلى إبطال.

عندما تقوم باستدعاء InvalidatePropertyأي المقترنة وقابلة للتطبيق CoerceValueCallbackأو PropertyChangedCallbackدالات مسجَّل لتبعية تلك خاصية قد طلبه.

استدعاء InvalidatePropertyتشغيل خاصية له قيمة المحلية تعيين لن يكون أي تأثير، نظراً لأن القيمة المحلية له الأسبقية تشغيل غير ذلك الإدخالات خاصية النظام، فيما عدا حركات. ومع ذلك، يمكنك أن يتصل ClearValue، يتصل ثم InvalidateProperty. لمزيد من المعلومات، راجع أسبقية قيمة خاصية تبعية.

استدعاء InvalidatePropertyهو ليس بالضرورة مناسباً للعديد من تبعية خاصية السيناريوهات. إذا أصبح إبطال خاصية تبعية نظراً لتغيير القيمة في أي constituents، إبطال خاصية النظام و re-evaluates خاصية "تبعية" تلقائياً. ومع ذلك، هناك لا تزال بعض السيناريوهات المناسبة الموقع InvalidatePropertyهو مفيدة. وعلى وجه الخصوص، يمكن استخدم InvalidatePropertyالقيمة coerce أو خاصية تم تغييره رد الاتصال لخاصية تبعية آخر. يمكنك أيضا استخدام InvalidatePropertyلفرض re-evaluation ربط من بيانات المصدر التي هو تعذر تطبيق الموصى بها INotifyPropertyChangedmechanهوm إعلام (ربما يستهلك فئات بيانات التي لا يمكن أن تكون مشتقة من، أو الموقع البيانات هو عضو ثابت).

يستدعي المثال التالي InvalidatePropertyتشغيل خاصية مخصصة، كلما خصائص التي المتعلقة بتغيير العمليات الحسابية للخاصية invalidated. Th هو هو أسلوب بديل إلى استدعاء CoerceValueالأسلوب، لأن أيضا إبطال خاصية "استدعاء أي regهوtered CoerceValueCallback.


static AreaButton()
{
    WidthProperty.OverrideMetadata(typeof(AreaButton), new FrameworkPropertyMetadata(new PropertyChangedCallback(InvalidateAreaProperty)));
    HeightProperty.OverrideMetadata(typeof(AreaButton), new FrameworkPropertyMetadata(new PropertyChangedCallback(InvalidateAreaProperty)));
}
static void InvalidateAreaProperty(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
    d.InvalidateProperty(AreaProperty);
}


نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008, نظام التشغيل Windows Server 2003

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0

NET Framework. Client Profile

مدعوم في: 4
إظهار: