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
継承

注釈

Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) データ バインディングは、アプリケーションがデータを提示し、データと対話するための簡単で一貫性のある方法を提供します。data binding provides a simple and consistent way for applications to present and interact with data. データ バインディングでは、2 つのオブジェクトのプロパティの値を同期することができます。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.

  • 各バインディングは、通常これら 4 つのコンポーネントを: バインディング ターゲット オブジェクト、ターゲット プロパティ、バインディング ソースの場合と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、target プロパティが、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データまたは Web サービス、またはを含む 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 (,). 詳細については、次を参照してください。バインディング マークアップ拡張機能またはバインディング宣言の概要します。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

Path を評価するときに、データ項目を基準にするか、DataSourceProvider オブジェクトを基準にするかを示す値を取得または設定します。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()

シリアル化プロセスが、このクラスのインスタンスの FallbackValue プロパティの有効値をシリアル化する必要があるかどうかを示す値を返します。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 プロパティをシリアル化する必要があるかどうかを示す値を返します。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.

適用対象

こちらもご覧ください