문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

DependencyObject.GetValue 메서드

DependencyObject 에서 종속성 속성의 현재 유효 값을 반환합니다.

네임스페이스:  System.Windows
어셈블리:  System.Windows(System.Windows.dll)

public Object GetValue(
	DependencyProperty dp
)

매개 변수

dp
형식: System.Windows.DependencyProperty
값을 검색할 속성의 DependencyProperty 식별자입니다.

반환 값

형식: System.Object
현재 유효 값을 반환합니다.

예외상황
ArgumentNullException

dp가 null인 경우

유효 값은 속성 시스템에서 값을 요청하는 호출자에게 반환하는 속성의 값입니다. 속성 시스템에서 속성 시스템 값 우선 순위에 참가하는 가능한 모든 입력을 계산하면 유효 값이 생성됩니다. 속성 변경 콜백, 데이터 바인딩, 스타일 및 템플릿, 애니메이션이 이에 해당합니다.

사용자 코드에서는 일반적으로 GetValue 호출이 필요하지 않습니다. 일반적으로 Silverlight 종속성 속성 또는 사용자 지정 종속성 속성에는 속성을 래핑하는 CLR 속성이 있으므로 기본 CLR 사용을 통해 속성 값을 가져올 수 있습니다. GetValue 가 CLR 래퍼 대신 사용할 수 있는 세 가지 주목할 만한 시나리오가 있습니다.

  • 사용자 지정 종속성 속성을 정의하는 경우. CLR 사용에 대한 속성 get 접근자/래퍼를 직접 정의하는 작업의 일부로 GetValue를 호출합니다. 자세한 내용은 사용자 지정 종속성 개체 및 종속성 속성을 참조하십시오.

  • 낮은 수준의 Silverlight 속성 시스템을 노출하는 API의 범위 내에 작동되고 있습니다. 이러한 API는 종종 DependencyProperty 값을 매개 변수로 사용하거나 값을 반환합니다. 예를 들어, 사용자가 콜백을 정의하고 있거나 DependencyProperty 식별자를 이미 전달하고 있는 다른 범위에 있습니다. 해당 범위와 상호 작용할 수 있는 둘 이상의 종속성 속성이 존재할 수 있습니다. 이러한 경우에는 GetValue를 호출하고 이미 갖고 있는 식별자를 전달하는 것이 대개는 더 간편합니다.

  • DependencyProperty 식별자가 연결된 속성을 참조하는 경우 또는 속성이 연결된 속성인지 CLR 래퍼가 포함된 종속성 속성인지 여부를 확실히 모를 경우. 연결된 속성에는 XAML 구현 패턴에 따라 일반적으로 보다 안전한 형식인 전용 get 및 set 접근자도 있습니다. 하지만 식별자가 이미 있는 경우 GetValue를 사용하는 것이 더 편리할 수 있습니다.

JavaScript API 참고 사항

JavaScript의 GetValue 구현에는 상당 부분 다른 점이 있는데 이는 기본적으로 이 메서드의 입력 형식이 DependencyProperty 식별자(개체)가 아니라 이름 문자열로 처리되기 때문입니다. JavaScript GetValue 메서드를 사용하면 JavaScript API에서 사용할 수 있는 모든 Silverlight 속성의 값을 가져올 수 있습니다. 그러나 모든 Silverlight 속성은 개체 모델에 대한 JavaScript 액세스에서 보다 직접적인 점으로 구분된 속성 구문을 지원하므로 일반적으로 이 메서드를 사용하여 속성 값을 가져올 필요가 없습니다.

반면 GetValue의 관리 코드 구현을 사용하려면 DependencyProperty 개체의 입력을 제공해야 합니다. 일반적으로 이 값은 공용 정적 속성에서 가져옵니다. 이 공용 정적 속성은 종속성 속성의 식별자 역할을 하며, 종속성 속성 자체가 선언된 멤버인 동일한 개체에서 사용할 수 있습니다. 모든 속성이 종속성 속성은 아닙니다. 즉, GetValue의 관리 코드 구현을 사용하면 관리되는 API의 가능한 모든 속성에 액세스할 수 있는 것이 아니라 종속성 속성에만 액세스할 수 있습니다.

다음 예제에서는 간단한 종속성 속성 선언을 보여 줍니다. GetValue 를 호출하면 새 종속성 속성의 CLR 래퍼에 대한 get 접근자 구현 전체가 구성됩니다.


public class Fish : Control
{
    public static readonly DependencyProperty SpeciesProperty =
    DependencyProperty.Register(
    "Species",
    typeof(string),
    typeof(Fish), null
    );
    public string Species
    {
        get { return (string)GetValue(SpeciesProperty); }
        set { SetValue(SpeciesProperty, (string)value); }
    }
}


Silverlight

5, 4, 3에서 지원

Windows Phone용 Silverlight

Windows Phone OS 7.1, Windows Phone OS 7.0에서 지원

Silverlight에서 지원되는 운영 체제 및 브라우저에 대한 자세한 내용은 지원되는 운영 체제 및 브라우저을 참조하십시오.

커뮤니티 추가 항목

추가
표시: