정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

BindingExpression 클래스

업데이트: 2007년 11월

Binding의 단일 인스턴스에 대한 정보를 포함합니다.

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

public sealed class BindingExpression : BindingExpressionBase, 
	IWeakEventListener
public final class BindingExpression extends BindingExpressionBase implements IWeakEventListener
public final class BindingExpression extends BindingExpressionBase implements IWeakEventListener
이 클래스의 인스턴스는 XAML에서 직접 만들 수 없습니다.

Binding 클래스는 바인딩 선언의 고급 클래스입니다. BindingExpression 클래스는 바인딩 소스와 바인딩 대상 사이의 연결을 유지 관리하는 내부 개체입니다. Binding은 여러 BindingExpression 개체에서 공유할 수 있는 모든 정보를 포함합니다. BindingExpression은 공유할 수 없으며 Binding에 대한 모든 인스턴스 정보를 포함하는 인스턴스 식입니다.

myDataObjectMyData 클래스의 인스턴스이고 myBinding이 소스 Binding 개체이고 MyData 클래스가 MyDataProperty라는 문자열 속성을 포함하는 정의된 클래스인 경우를 예로 들겠습니다. 이 예제에서는 TextBlock의 인스턴스인 mytext의 텍스트 내용을 MyDataProperty에 바인딩합니다.

//make a new source
  MyData myDataObject = new MyData(DateTime.Now);      
  Binding myBinding = new Binding("MyDataProperty");
  myBinding.Source = myDataObject;
  myText.SetBinding(TextBlock.TextProperty, myBinding);


동일한 myBinding 개체를 사용하여 다른 바인딩을 만들 수 있습니다. 예를 들어, myBinding 개체를 사용하여 확인란의 텍스트 내용을 MyDataProperty에 바인딩할 수 있습니다. 해당 시나리오에서는 myBinding 개체를 공유하는 BindingExpression의 인스턴스가 두 개 있습니다.

데이터 바인딩된 개체에 GetBindingExpression 메서드나 GetBindingExpression 메서드를 사용하여 BindingExpression 개체를 가져올 수 있습니다.

이 예제에서는 데이터 바인딩된 대상 속성에서 바인딩 개체를 가져오는 방법을 보여 줍니다.

Binding 개체를 가져오기 위해 다음을 수행할 수 있습니다.

// textBox3 is an instance of a TextBox
// the TextProperty is the data-bound dependency property
Binding myBinding = BindingOperations.GetBinding(textBox3, TextBox.TextProperty);


참고:

대상 개체의 속성 둘 이상이 데이터 바인딩을 사용하고 있을 수 있으므로 원하는 바인딩에 대해 종속성 속성을 지정해야 합니다.

또는 BindingExpression을 가져온 다음 ParentBinding 속성의 값을 가져올 수 있습니다.

전체 예제를 보려면 바인딩 유효성 검사 샘플을 참조하십시오.

참고:

바인딩이 MultiBinding인 경우 BindingOperations.GetMultiBinding을 사용합니다. PriorityBinding인 경우에는 BindingOperations.GetPriorityBinding을 사용합니다. 대상 속성이 Binding, MultiBinding 또는 PriorityBinding 중 어느 것을 사용하여 바인딩되었는지 확실하지 않은 경우 BindingOperations.GetBindingBase를 사용할 수 있습니다.

이 형식의 모든 공용 static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.

Windows Vista

.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

.NET Framework

3.5, 3.0에서 지원

커뮤니티 추가 항목

표시:
© 2014 Microsoft