DependencyObject DependencyObject DependencyObject DependencyObject Class

정의

종속성 속성 시스템에 참가하는 개체를 나타냅니다.Represents an object that participates in the dependency property system.

public ref class DependencyObject : System::Windows::Threading::DispatcherObject
[System.Windows.Markup.NameScopeProperty("NameScope", typeof(System.Windows.NameScope))]
public class DependencyObject : System.Windows.Threading.DispatcherObject
type DependencyObject = class
    inherit DispatcherObject
Public Class DependencyObject
Inherits DispatcherObject
상속
DependencyObjectDependencyObjectDependencyObjectDependencyObject
파생
특성

예제

파생 되는 다음 예제에서는 DependencyObject 새 추상 클래스를 만듭니다.The following example derives from DependencyObject to create a new abstract class. 다음 클래스는 연결된 된 속성을 등록 하 고 해당 연결 된 속성에 대 한 지원 멤버를 포함 합니다.The class then registers an attached property and includes support members for that attached property.

public abstract class AquariumObject3 : DependencyObject
{
    public enum Bouyancy
    {
        Floats,
        Sinks,
        Drifts
    }
    public static readonly DependencyProperty BouyancyProperty = DependencyProperty.RegisterAttached(
      "Bouyancy",
      typeof(Bouyancy),
      typeof(AquariumObject3),
      new FrameworkPropertyMetadata(Bouyancy.Floats, FrameworkPropertyMetadataOptions.AffectsArrange),
      new ValidateValueCallback(ValidateBouyancy)
    );
    public static void SetBouyancy(UIElement element, Bouyancy value)
    {
        element.SetValue(BouyancyProperty, value);
    }
    public static Bouyancy GetBouyancy(UIElement element)
    {
        return (Bouyancy)element.GetValue(BouyancyProperty);
    }
    private static bool ValidateBouyancy(object value)
    {
        Bouyancy bTest = (Bouyancy) value;
        return (bTest == Bouyancy.Floats || bTest == Bouyancy.Drifts || bTest==Bouyancy.Sinks);
    }
    public static readonly DependencyProperty IsDirtyProperty = DependencyProperty.Register(
      "IsDirty",
      typeof(Boolean),
      typeof(AquariumObject3)
    );
}
Public MustInherit Class AquariumObject3
    Inherits DependencyObject
    Public Enum Bouyancy
        Floats
        Sinks
        Drifts
    End Enum
    Public Shared ReadOnly BouyancyProperty As DependencyProperty = DependencyProperty.RegisterAttached("Bouyancy", GetType(Bouyancy), GetType(AquariumObject3), New FrameworkPropertyMetadata(Bouyancy.Floats, FrameworkPropertyMetadataOptions.AffectsArrange), New ValidateValueCallback(AddressOf ValidateBouyancy))
    Public Shared Sub SetBouyancy(ByVal element As UIElement, ByVal value As Bouyancy)
        element.SetValue(BouyancyProperty, value)
    End Sub
    Public Shared Function GetBouyancy(ByVal element As UIElement) As Bouyancy
        Return CType(element.GetValue(BouyancyProperty), Bouyancy)
    End Function
    Private Shared Function ValidateBouyancy(ByVal value As Object) As Boolean
        Dim bTest As Bouyancy = CType(value, Bouyancy)
        Return (bTest = Bouyancy.Floats OrElse bTest = Bouyancy.Drifts OrElse bTest = Bouyancy.Sinks)
    End Function
    Public Shared ReadOnly IsDirtyProperty As DependencyProperty = DependencyProperty.Register("IsDirty", GetType(Boolean), GetType(AquariumObject3))
End Class

설명

합니다 DependencyObject 수 있도록 클래스 WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) 많은 파생된 클래스에서 속성 시스템 서비스입니다.The DependencyObject class enables WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) property system services on its many derived classes.

속성 시스템의 기본 기능은 속성의 값을 계산 하 고 변경 된 값에 대 한 시스템 알림을 제공할 수 있습니다.The property system's primary function is to compute the values of properties, and to provide system notification about values that have changed. 속성 시스템에 참여 하는 다른 핵심 클래스는 DependencyProperty합니다.Another key class that participates in the property system is DependencyProperty. DependencyProperty 속성 시스템에 종속성 속성의 등록을 사용 하도록 설정 하 고 반면 식별 및 각 종속성 속성에 대 한 정보를 제공 DependencyObject 기본 클래스 종속성 속성을 사용 하는 개체 수 있습니다.DependencyProperty enables the registration of dependency properties into the property system, and provides identification and information about each dependency property, whereas DependencyObject as a base class enables objects to use the dependency properties.

DependencyObject 서비스 및 특성에는 다음과 같습니다.DependencyObject services and characteristics include the following:

  • 종속성 속성은 호스팅 지원 합니다.Dependency property hosting support. 호출 하 여 종속성 속성 등록은 Register 메서드 및 클래스의 공용 정적 필드로 메서드의 반환 값을 저장 합니다.You register a dependency property by calling the Register method, and storing the method's return value as a public static field in your class.

  • 호스팅 지원 연결 된 속성입니다.Attached property hosting support. 호출 하 여 연결된 된 속성을 등록 합니다 RegisterAttached 메서드 및 공용 정적 필드로 읽기 전용 클래스에서 메서드의 반환 값을 저장 합니다.You register an attached property by calling the RegisterAttached method, and storing the method's return value as a public static read-only field in your class. (추가 멤버 요구 사항도 있습니다;이 한 WPFWPF 연결 된 속성에 대 한 특정 구현 합니다.(There are also additional member requirements; note that this represents a WPFWPF specific implementation for attached properties. 자세한 내용은 참조 하세요 연결 된 속성 개요.) 연결 된 속성에서 파생 되는 임의의 클래스에 설정할 수 있습니다 DependencyObject합니다.For details, see Attached Properties Overview.) Your attached property can then be set on any class that derives from DependencyObject.

  • Get, set 및에 존재 하는 종속성 속성의 값에 대 한 유틸리티 메서드를 선택 취소 된 DependencyObject합니다.Get, set, and clear utility methods for values of any dependency properties that exist on the DependencyObject.

  • 메타 데이터 값 지원, 속성 변경 알림 및 종속성 속성에 대 한 재정의 콜백을 강제 변환 또는 연결 된 속성입니다.Metadata, coerce value support, property changed notification, and override callbacks for dependency properties or attached properties. 또한는 DependencyObject 클래스는 종속성 속성에 대 한 소유자 당 속성 메타 데이터를 용이 하 게 합니다.Also, the DependencyObject class facilitates the per-owner property metadata for a dependency property.

  • 파생 된 클래스에 대 한 공통 기본 클래스 ContentElement, Freezable, 또는 Visual합니다.A common base class for classes derived from ContentElement, Freezable, or Visual. (UIElement, 다른 기본 요소 클래스를 포함 하는 클래스 계층 구조가 Visual.)(UIElement, another base element class, has a class hierarchy that includes Visual.)

생성자

DependencyObject() DependencyObject() DependencyObject() DependencyObject()

DependencyObject 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the DependencyObject class.

속성

DependencyObjectType DependencyObjectType DependencyObjectType DependencyObjectType

이 인스턴스의 CLRCLR 형식을 래핑하는 DependencyObjectType을 가져옵니다.Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

Dispatcher Dispatcher Dispatcher Dispatcher

Dispatcher와 연결된 DispatcherObject를 가져옵니다.Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
IsSealed IsSealed IsSealed IsSealed

이 인스턴스가 현재 봉인되어 있는지(읽기 전용인지) 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether this instance is currently sealed (read-only).

메서드

CheckAccess() CheckAccess() CheckAccess() CheckAccess()

호출 스레드가 이 DispatcherObject에 액세스할 수 있는지 여부를 확인합니다.Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty)

속성의 로컬 값을 지웁니다.Clears the local value of a property. 지울 속성이 DependencyProperty 식별자에서 지정됩니다.The property to be cleared is specified by a DependencyProperty identifier.

ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey)

읽기 전용 속성의 로컬 값을 지웁니다.Clears the local value of a read-only property. 선언할 속성이 DependencyPropertyKey에서 지정됩니다.The property to be cleared is specified by a DependencyPropertyKey.

CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty)

지정된 종속성 속성의 값을 강제 변환합니다.Coerces the value of the specified dependency property. 호출하는 DependencyObject에 있으므로 이 작업은 종속성 속성의 속성 메타데이터에 지정된 CoerceValueCallback 함수를 호출하여 수행합니다.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

제공된 DependencyObject가 현재 DependencyObject에 해당하는지 여부를 확인합니다.Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

DependencyObject의 해시 코드를 가져옵니다.Gets a hash code for this DependencyObject.

GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator()

DependencyObject에 대해 로컬로 값을 설정한 종속성 속성을 확인하기 위한 특수 열거자를 만듭니다.Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(Inherited from Object)
GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty)

DependencyObject의 인스턴스에서 종속성 속성의 현재 유효 값을 반환합니다.Returns the current effective value of a dependency property on this instance of a DependencyObject.

InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty)

지정된 종속성 속성의 유효 값을 다시 계산합니다.Re-evaluates the effective value for the specified dependency property

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs)

DependencyObject에서 종속성 속성의 유효 값이 업데이트될 때마다 호출됩니다.Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. 변경된 특정 종속성 속성은 이벤트 데이터에서 보고됩니다.The specific dependency property that changed is reported in the event data.

ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty)

종속성 속성의 로컬 값을 반환합니다(있는 경우).Returns the local value of a dependency property, if it exists.

SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object)

해당 값 소스를 변경하지 않고 종속성 속성의 값을 설정합니다.Sets the value of a dependency property without changing its value source.

SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object)

지정된 종속성 속성 식별자를 가진 종속성 속성의 로컬 값을 설정합니다.Sets the local value of a dependency property, specified by its dependency property identifier.

SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object)

종속성 속성의 DependencyPropertyKey 식별자에 의해 지정된 읽기 전용 종속성 속성의 로컬 값을 설정합니다.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty)

serialization 프로세스에서 지정된 종속성 속성의 값을 직렬화해야 하는지 여부를 나타내는 값을 반환합니다.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(Inherited from Object)
VerifyAccess() VerifyAccess() VerifyAccess() VerifyAccess()

호출 스레드에서 이 DispatcherObject에 액세스할 수 있는지 확인합니다.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

적용 대상

추가 정보