Binding Binding Binding Binding Class

정의

바인딩의 정의에 고급 액세스를 제공하여 바인딩 대상 개체의 속성(일반적으로 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.

바인딩을 설정 하려면 사용 합니다 Binding 클래스나 상속 하는 다른 클래스 중 하나 BindingBase합니다.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 개체의 이름 속성에 TextBox, 대상 속성이 Text 속성을 사용 하는 값은 이름 및 원본 개체가 직원 개체입니다.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, 목록 개체는 CLRCLR 연관 된 개체 ADO.NETADO.NET 포함 된 XmlNode 데이터 나 웹 서비스에 XMLXML 데이터.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 (,). 자세한 내용은 Binding 태그 확장 하거나 바인딩 선언 개요합니다.For more information, see Binding Markup Extension or Binding Declarations Overview.

생성자

Binding() Binding() Binding() Binding()

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

Binding(String) Binding(String) Binding(String) Binding(String)

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

필드

DoNothing DoNothing DoNothing DoNothing

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

IndexerName IndexerName IndexerName IndexerName

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

SourceUpdatedEvent SourceUpdatedEvent SourceUpdatedEvent SourceUpdatedEvent

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

TargetUpdatedEvent TargetUpdatedEvent TargetUpdatedEvent TargetUpdatedEvent

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

XmlNamespaceManagerProperty XmlNamespaceManagerProperty XmlNamespaceManagerProperty XmlNamespaceManagerProperty

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

속성

AsyncState AsyncState AsyncState AsyncState

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

BindingGroupName BindingGroupName BindingGroupName BindingGroupName

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

(Inherited from BindingBase)
BindsDirectlyToSource BindsDirectlyToSource BindsDirectlyToSource BindsDirectlyToSource

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

Converter Converter Converter Converter

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

ConverterCulture ConverterCulture ConverterCulture ConverterCulture

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

ConverterParameter ConverterParameter ConverterParameter ConverterParameter

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

Delay Delay Delay Delay

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

(Inherited from BindingBase)
ElementName ElementName ElementName ElementName

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

FallbackValue FallbackValue FallbackValue FallbackValue

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

(Inherited from BindingBase)
IsAsync IsAsync IsAsync IsAsync

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

Mode Mode Mode Mode

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

NotifyOnSourceUpdated NotifyOnSourceUpdated NotifyOnSourceUpdated 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 NotifyOnTargetUpdated NotifyOnTargetUpdated 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 NotifyOnValidationError NotifyOnValidationError NotifyOnValidationError

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

Path Path Path Path

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

RelativeSource RelativeSource RelativeSource RelativeSource

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

Source Source Source Source

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

StringFormat StringFormat StringFormat StringFormat

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

(Inherited from BindingBase)
TargetNullValue TargetNullValue TargetNullValue TargetNullValue

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

(Inherited from BindingBase)
UpdateSourceExceptionFilter UpdateSourceExceptionFilter UpdateSourceExceptionFilter 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 UpdateSourceTrigger UpdateSourceTrigger UpdateSourceTrigger

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

ValidatesOnDataErrors ValidatesOnDataErrors ValidatesOnDataErrors ValidatesOnDataErrors

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

ValidatesOnExceptions ValidatesOnExceptions ValidatesOnExceptions ValidatesOnExceptions

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

ValidatesOnNotifyDataErrors ValidatesOnNotifyDataErrors ValidatesOnNotifyDataErrors ValidatesOnNotifyDataErrors

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

ValidationRules ValidationRules ValidationRules ValidationRules

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

XPath XPath XPath XPath

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

연결된 속성

XmlNamespaceManager XmlNamespaceManager XmlNamespaceManager XmlNamespaceManager

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

메서드

AddSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) AddSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) AddSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) AddSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

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

AddTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) AddTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) AddTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) AddTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

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

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

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

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

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

(Inherited from Object)
GetType() GetType() GetType() GetType()

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

(Inherited from Object)
GetXmlNamespaceManager(DependencyObject) GetXmlNamespaceManager(DependencyObject) GetXmlNamespaceManager(DependencyObject) GetXmlNamespaceManager(DependencyObject)

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

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

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

(Inherited from Object)
ProvideValue(IServiceProvider) ProvideValue(IServiceProvider) ProvideValue(IServiceProvider) ProvideValue(IServiceProvider)

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

(Inherited from BindingBase)
RemoveSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) RemoveSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) RemoveSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) RemoveSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

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

RemoveTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) RemoveTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) RemoveTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>) RemoveTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

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

SetXmlNamespaceManager(DependencyObject, XmlNamespaceManager) SetXmlNamespaceManager(DependencyObject, XmlNamespaceManager) SetXmlNamespaceManager(DependencyObject, XmlNamespaceManager) SetXmlNamespaceManager(DependencyObject, XmlNamespaceManager)

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

ShouldSerializeFallbackValue() ShouldSerializeFallbackValue() ShouldSerializeFallbackValue() 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.

(Inherited from BindingBase)
ShouldSerializePath() ShouldSerializePath() ShouldSerializePath() ShouldSerializePath()

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

ShouldSerializeSource() ShouldSerializeSource() ShouldSerializeSource() ShouldSerializeSource()

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

ShouldSerializeTargetNullValue() ShouldSerializeTargetNullValue() ShouldSerializeTargetNullValue() ShouldSerializeTargetNullValue()

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

(Inherited from BindingBase)
ShouldSerializeValidationRules() ShouldSerializeValidationRules() ShouldSerializeValidationRules() ShouldSerializeValidationRules()

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

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

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

(Inherited from Object)

연결된 이벤트

SourceUpdated SourceUpdated SourceUpdated 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 TargetUpdated TargetUpdated 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.

적용 대상

추가 정보