Binding 클래스

정의

바인딩의 정의에 고급 액세스를 제공하여 바인딩 대상 개체의 속성(일반적으로 WPF 요소), 임의 데이터 원본(예: 데이터베이스, XML 파일 또는 데이터가 포함된 개체)을 연결합니다.Provides high-level access to the definition of a binding, which connects the properties of binding target objects (typically, WPF elements), and any data source (for example, a database, an XML file, or any object that contains data).

public ref class Binding : System::Windows::Data::BindingBase
public class Binding : System.Windows.Data.BindingBase
type Binding = class
    inherit BindingBase
Public Class Binding
Inherits BindingBase
상속

설명

WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) 데이터 바인딩은 애플리케이션이 데이터를 제공하고 상호 작용할 수 있는 간단하고 일관된 방법을 제공합니다.data binding provides a simple and consistent way for applications to present and interact with data. 데이터 바인딩을 사용 하면 두 개의 다른 개체의 속성 값을 동기화 할 수 있습니다.Data binding enables you to synchronize the values of the properties of two different objects.

바인딩을 설정 하려면 BindingBase를 상속 하는 다른 클래스 중 하나 또는 Binding 클래스를 사용 합니다.To establish a binding, use the Binding class or one of the other classes that inherit BindingBase. 어떤 개체에 관계 없이 바인딩 및 데이터 원본의 특성을 각 바인딩에 다음 그림에 나온 모델을 따릅니다.Regardless of what object you are binding and the nature of your data source, each binding follows the model illustrated by the following figure.

기본 데이터 바인딩 다이어그램Basic data binding diagram

이 그림에서는 다음과 같은 기본 WPFWPF 데이터 바인딩 개념을 보여 줍니다.The figure demonstrates the following fundamental WPFWPF data binding concepts.

  • 각 바인딩에는 일반적으로 바인딩 대상 개체, 대상 속성, 바인딩 소스 및 사용할 바인딩 소스의 값에 대 한 Path의 네 가지 구성 요소가 있습니다.Each binding typically has these four components: a binding target object, a target property, a binding source, and a Path to the value in the binding source to use. 예를 들어 TextBox의 콘텐츠를 Employee 개체의 Name 속성에 바인딩하려는 경우 대상 개체는 TextBox, 대상 속성은 Text 속성, 사용할 값은 이름, 원본 개체는 Employee 개체입니다.For example, if you want to bind the content of a TextBox to the Name property of an Employee object, your target object is the TextBox, the target property is the Text property, the value to use is Name, and the source object is the Employee object.

  • 대상 속성은 종속성 속성이어야 합니다.The target property must be a dependency property. 즉, 필드를 바인딩할 수 없습니다.This also means that you cannot bind a field. UIElement 개체의 속성 대부분은 종속성 속성 이며 읽기 전용 개체를 제외한 대부분의 종속성 속성은 기본적으로 데이터 바인딩을 지원 합니다.Most properties of UIElement objects are dependency properties and most dependency properties, except read-only ones, support data binding by default. DependencyObject 형식만 종속성 속성을 정의할 수 있고 모든 UIElement 개체는 DependencyObject에서 파생 됩니다.(Only DependencyObject types can define dependency properties and all UIElement objects derive from DependencyObject.)

  • 그림에는 지정되지 않았지만 바인딩 소스 개체는 사용자 지정 CLRCLR 개체로 제한되지 않습니다.Although not specified in the figure, it should be noted that the binding source object is not restricted to being a custom CLRCLR object. WPFWPF 데이터 바인딩은 CLRCLR 개체 및 XMLXML 형식의 데이터를 지원합니다.data binding supports data in the form of CLRCLR objects and XMLXML. 몇 가지 예를 제공 하기 위해 바인딩 소스는 UIElement, 목록 개체, ADO.NETADO.NET 데이터 또는 웹 서비스와 연결 된 CLRCLR 개체 또는 XMLXML 데이터를 포함 하는 XmlNode 일 수 있습니다.To provide some examples, your binding source may be a UIElement, any list object, a CLRCLR object that is associated with ADO.NETADO.NET data or Web Services, or an XmlNode that contains your XMLXML data.

Mode 속성을 사용 하 여 데이터 흐름의 방향을 지정 합니다.Use the Mode property to specify the direction of the data flow. 단방향 또는 양방향 바인딩에서 소스 변경 내용을 검색 하려면 소스가 INotifyPropertyChanged와 같은 적절 한 속성 변경 알림 메커니즘을 구현 해야 합니다.To detect source changes in one-way or two-way bindings, the source must implement a suitable property change notification mechanism such as INotifyPropertyChanged. 예제는 방법: 속성 변경 알림 구현을 참조 하세요.For an example, see How to: Implement Property Change Notification. UpdateSourceTrigger 속성은 원본 업데이트의 타이밍을 지정 합니다.The UpdateSourceTrigger property specifies the timing of source updates. 자세한 내용은 데이터 바인딩 개요의 "기본 데이터 바인딩 개념"을 참조 하세요.For more information, see "Basic Data Binding Concepts" in Data Binding Overview.

XAML 특성 사용XAML Attribute Usage

<object property="{Binding  declaration}"/>  

XAML 값XAML Values

declarationdeclaration
0 개 이상의 특성 할당 절이 쉼표 (,)로 구분 합니다.Zero or more attribute-assignment clauses separated by commas (,). 자세한 내용은 바인딩 태그 확장 또는 바인딩 선언 개요를 참조 하세요.For more information, see Binding Markup Extension or Binding Declarations Overview.

생성자

Binding()

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

Binding(String)

초기 경로를 사용하여 Binding 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the Binding class with an initial path.

필드

DoNothing

바인딩 엔진에 작업을 수행하지 않도록 지시하기 위해 반환된 값으로 사용됩니다.Used as a returned value to instruct the binding engine not to perform any action.

IndexerName

인덱서 속성이 변경되었음을 나타내는 PropertyNamePropertyChangedEventArgs으로 사용됩니다.Used as the PropertyName of PropertyChangedEventArgs to indicate that an indexer property has changed.

SourceUpdatedEvent

SourceUpdated 연결된 이벤트를 식별합니다.Identifies the SourceUpdated attached event.

TargetUpdatedEvent

TargetUpdated 연결된 이벤트를 식별합니다.Identifies the TargetUpdated attached event.

XmlNamespaceManagerProperty

XmlNamespaceManager 연결된 속성을 식별합니다.Identifies the XmlNamespaceManager attached property.

속성

AsyncState

비동기 데이터 디스패처로 전달된 불투명 데이터를 가져오거나 설정합니다.Gets or sets opaque data passed to the asynchronous data dispatcher.

BindingGroupName

이 바인딩이 속하는 BindingGroup의 이름을 가져오거나 설정합니다.Gets or sets the name of the BindingGroup to which this binding belongs.

(다음에서 상속됨 BindingBase)
BindsDirectlyToSource

데이터 항목 또는 Path 개체를 기준으로 DataSourceProvider를 평가할지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether to evaluate the Path relative to the data item or the DataSourceProvider object.

Converter

사용할 변환기를 가져오거나 설정합니다.Gets or sets the converter to use.

ConverterCulture

변환기를 평가할 문화권을 가져오거나 설정합니다.Gets or sets the culture in which to evaluate the converter.

ConverterParameter

Converter에 전달할 매개 변수를 가져오거나 설정합니다.Gets or sets the parameter to pass to the Converter.

Delay

대상 변경 값을 한 후 바인딩 소스를 업데이트 하기 전에 대기할 밀리초 단위로 시간을 설정 하거나 가져옵니다.Gets or sets the amount of time, in milliseconds, to wait before updating the binding source after the value on the target changes.

(다음에서 상속됨 BindingBase)
ElementName

바인딩 소스 개체로 사용할 요소의 이름을 가져오거나 설정합니다.Gets or sets the name of the element to use as the binding source object.

FallbackValue

바인딩에서 값을 반환할 수 없는 경우 사용할 값을 가져오거나 설정합니다.Gets or sets the value to use when the binding is unable to return a value.

(다음에서 상속됨 BindingBase)
IsAsync

Binding에서 비동기적으로 값을 가져오고 설정해야 하는지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether the Binding should get and set values asynchronously.

Mode

바인딩에서 데이터 흐름의 방향을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates the direction of the data flow in the binding.

NotifyOnSourceUpdated

값이 바인딩 대상에서 바인딩 소스로 전송되는 경우 SourceUpdated 이벤트를 발생시킬지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether to raise the SourceUpdated event when a value is transferred from the binding target to the binding source.

NotifyOnTargetUpdated

값이 바인딩 소스에서 바인딩 대상으로 전송될 때 TargetUpdated 이벤트를 발생시킬지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether to raise the TargetUpdated event when a value is transferred from the binding source to the binding target.

NotifyOnValidationError

바인딩된 개체에서 Error 연결된 이벤트를 발생시킬지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether to raise the Error attached event on the bound object.

Path

바인딩 소스 속성의 경로를 가져오거나 설정합니다.Gets or sets the path to the binding source property.

RelativeSource

바인딩 대상의 위치를 기준으로 해당 위치를 지정하여 바인딩 소스를 가져오거나 설정합니다.Gets or sets the binding source by specifying its location relative to the position of the binding target.

Source

바인딩 소스로 사용할 개체를 가져오거나 설정합니다.Gets or sets the object to use as the binding source.

StringFormat

바인딩된 값을 문자열로 표시 되 면 바인딩 서식 지정 방법을 지정 하는 문자열을 가져오거나 설정 합니다.Gets or sets a string that specifies how to format the binding if it displays the bound value as a string.

(다음에서 상속됨 BindingBase)
TargetNullValue

소스 값이 null일 때 대상에서 사용되는 값을 가져오거나 설정합니다.Gets or sets the value that is used in the target when the value of the source is null.

(다음에서 상속됨 BindingBase)
UpdateSourceExceptionFilter

바인딩 소스 값을 업데이트하는 동안 바인딩 엔진에서 발생하는 예외를 처리하기 위한 사용자 지정 논리를 제공하는 데 사용할 수 있는 처리기를 가져오거나 설정합니다.Gets or sets a handler you can use to provide custom logic for handling exceptions that the binding engine encounters during the update of the binding source value. 이는 ExceptionValidationRule을 바인딩과 연결한 경우에만 적용됩니다.This is only applicable if you have associated an ExceptionValidationRule with your binding.

UpdateSourceTrigger

바인딩 소스 업데이트의 타이밍을 결정하는 값을 가져오거나 설정합니다.Gets or sets a value that determines the timing of binding source updates.

ValidatesOnDataErrors

DataErrorValidationRule을 포함할지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether to include the DataErrorValidationRule.

ValidatesOnExceptions

ExceptionValidationRule을 포함할지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether to include the ExceptionValidationRule.

ValidatesOnNotifyDataErrors

NotifyDataErrorValidationRule을 포함할지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether to include the NotifyDataErrorValidationRule.

ValidationRules

사용자 입력의 유효성을 검사하는 규칙 컬렉션을 가져옵니다.Gets a collection of rules that check the validity of the user input.

XPath

사용할 XPath 바인딩 소스에서 값을 반환하는 XMLXML 쿼리를 가져오거나 설정합니다.Gets or sets an XPath query that returns the value on the XMLXML binding source to use.

연결된 속성

XmlNamespaceManager

XML 바인딩의 네임스페이스가 인식하는 XmlNamespaceManager 쿼리를 수행하는 데 사용되는 XPath를 가져오거나 설정합니다.Gets or sets the XmlNamespaceManager used to perform namespace-aware XPath queries in XML bindings.

메서드

AddSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

SourceUpdated 연결된 이벤트에 대한 처리기를 추가합니다.Adds a handler for the SourceUpdated attached event.

AddTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

TargetUpdated 연결된 이벤트에 대한 처리기를 추가합니다.Adds a handler for the TargetUpdated attached event.

Equals(Object)

지정한 개체가 현재 개체와 같은지를 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetType()

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

(다음에서 상속됨 Object)
GetXmlNamespaceManager(DependencyObject)

지정된 개체에 연결된 바인딩에 사용되는 XMLXML 네임스페이스 관리자 개체를 반환합니다.Returns an XMLXML namespace manager object used by the binding attached to the specified object.

MemberwiseClone()

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

(다음에서 상속됨 Object)
ProvideValue(IServiceProvider)

이 바인딩 및 확장이 적용되는 속성에 설정해야 하는 개체를 반환합니다.Returns an object that should be set on the property where this binding and extension are applied.

(다음에서 상속됨 BindingBase)
RemoveSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

SourceUpdated 연결된 이벤트에 대한 처리기를 제거합니다.Removes a handler for the SourceUpdated attached event.

RemoveTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

TargetUpdated 연결된 이벤트에 대한 처리기를 제거합니다.Removes a handler for the TargetUpdated attached event.

SetXmlNamespaceManager(DependencyObject, XmlNamespaceManager)

지정된 요소에 연결된 바인딩에 사용되는 네임스페이스 관리자 개체를 설정합니다.Sets a namespace manager object used by the binding attached to the provided element.

ShouldSerializeFallbackValue()

이 클래스의 인스턴스에서 serialization 프로세스를 통해 FallbackValue 속성의 유효 값을 serialize해야 하는지 여부를 나타내는 값을 반환합니다.Returns a value that indicates whether serialization processes should serialize the effective value of the FallbackValue property on instances of this class.

(다음에서 상속됨 BindingBase)
ShouldSerializePath()

Path 속성을 지속해야 하는지 여부를 나타냅니다.Indicates whether the Path property should be persisted.

ShouldSerializeSource()

Source 속성을 지속해야 하는지 여부를 나타냅니다.Indicates whether the Source property should be persisted.

ShouldSerializeTargetNullValue()

TargetNullValue 속성이 serialize되어야 하는지 여부를 나타내는 값을 반환합니다.Returns a value that indicates whether the TargetNullValue property should be serialized.

(다음에서 상속됨 BindingBase)
ShouldSerializeValidationRules()

ValidationRules 속성을 지속해야 하는지 여부를 나타냅니다.Indicates whether the ValidationRules property should be persisted.

ToString()

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

(다음에서 상속됨 Object)

연결된 이벤트

SourceUpdated

NotifyOnSourceUpdated 값이 true로 설정된 바인딩에 대해서만 값이 바인딩 대상에서 바인딩 소스로 전송되면 발생합니다.Occurs when a value is transferred from the binding target to the binding source, but only for bindings with the NotifyOnSourceUpdated value set to true.

TargetUpdated

NotifyOnTargetUpdated 값이 true로 설정된 바인딩에 대해서만 값이 바인딩 소스에서 바인딩 대상으로 전송될 때 발생합니다.Occurs when a value is transferred from the binding source to the binding target, but only for bindings with the NotifyOnTargetUpdated value set to true.

적용 대상

추가 정보