다음을 통해 공유


BindingOperations.SetBinding 메서드

정의

Binding을 대상 개체의 대상 속성과 연결합니다. 이 메서드는 XAML 태그에서 {Binding} 태그 확장을 사용하는 것과 동일한 코드입니다.

 static void SetBinding(DependencyObject const& target, DependencyProperty const& dp, BindingBase const& binding);
public static void SetBinding(DependencyObject target, DependencyProperty dp, BindingBase binding);
function setBinding(target, dp, binding)
Public Shared Sub SetBinding (target As DependencyObject, dp As DependencyProperty, binding As BindingBase)

매개 변수

target
DependencyObject

평가된 바인딩의 대상이 되어야 하는 개체입니다.

dp
DependencyProperty

바인딩할 대상의 속성이며 식별자에 의해 지정됩니다. 이러한 식별자는 일반적으로 대상 개체 또는 해당 기본 형식 중 하나를 정의하는 형식에서 정적 읽기 전용 속성으로 사용할 수 있습니다. 연결된 속성에 바인딩할 수도 있지만 비고를 참조하세요.

binding
BindingBase

대상 속성에 할당할 바인딩입니다. 이 바인딩을 초기화해야 합니다. Path와 같은 중요한 바인딩 속성은 매개 변수로 전달하기 전에 이미 설정해야 합니다.

설명

사용자 지정 종속성 속성 또는 사용자 지정 연결된 속성에 바인딩할 수 있습니다. dp 매개 변수로 전달하는 식별자는 Windows 런타임 정의된 속성일 필요가 없습니다.

BindingOperations.SetBinding은 정적 유틸리티 메서드이며 기본적으로 FrameworkElement.SetBinding과 동일한 작업을 수행합니다. Instance 메서드이므로 FrameworkElement.SetBinding을 사용하는 것이 더 일반적입니다. 하지만 한 가지 중요한 차이점은 BindingOperations.SetBinding이 DependencyObject대상 값을 사용할 수 있는 반면 FrameworkElement.SetBinding은 정의에 따라 FrameworkElement 대상에만 사용할 수 있다는 것입니다. 일반적으로 XAML UI에 사용되는 대부분의 Windows 런타임 클래스는 중요하지 않습니다. 이는 대부분 FrameworkElement 하위 클래스이기 때문입니다. 그러나 DependencyObject 또는 UIElement에서 파생된 사용자 지정 클래스에서 바인딩을 대상으로 하는 경우 구분이 중요할 수 있습니다.

참고

SetBinding 메서드를 호출하고 새 Binding 개체를 전달해도 기존 바인딩이 반드시 제거되는 것은 아닙니다. 대신 먼저 DependencyObject.ClearValue 메서드를 호출한 다음 SetBinding을 호출해야 합니다.

연결된 속성에 바인딩

대상 개체가 지원하는 연결된 속성에 데이터 바인딩을 배치할 수 있습니다. 기술적으로 DependencyObject 는 가능한 모든 연결된 속성을 지원하지만 일반적으로 해당 개체 또는 시나리오와 관련된 연결된 속성에 대해서만 바인딩을 설정합니다. 예를 들어 대상 요소에 해당 정보를 사용할 Grid 부모가 있다고 예상하는 경우에만 Grid.Row에 바인딩을 설정합니다. dp 매개 변수를 연결된 속성의 소유자 클래스에 있는 종속성 속성 식별자로 지정합니다(Grid.Row 예제의 경우 식별자는 Grid.RowProperty임). 연결된 속성이므로 대상에서 해당 식별자를 찾을 수 없습니다. 연결된 속성에 대한 자세한 내용은 연결된 속성 개요를 참조하세요.

적용 대상

추가 정보