BindingOperations.GetBindingExpression(DependencyObject, DependencyProperty) メソッド


指定されたオブジェクト上の指定されたバインディング ターゲット プロパティに関連付けられた BindingExpression オブジェクトを返します。Returns the BindingExpression object associated with the specified binding target property on the specified object.

 static System::Windows::Data::BindingExpression ^ GetBindingExpression(System::Windows::DependencyObject ^ target, System::Windows::DependencyProperty ^ dp);
public static System.Windows.Data.BindingExpression GetBindingExpression (System.Windows.DependencyObject target, System.Windows.DependencyProperty dp);
static member GetBindingExpression : System.Windows.DependencyObject * System.Windows.DependencyProperty -> System.Windows.Data.BindingExpression
Public Shared Function GetBindingExpression (target As DependencyObject, dp As DependencyProperty) As BindingExpression



dp が存在するバインディング ターゲット オブジェクト。The binding target object where dp is.


BindingExpression オブジェクトの取得元となるバインディング ターゲット プロパティ。The binding target property from which to retrieve the BindingExpression object.


指定したプロパティに関連付けられた BindingExpression オブジェクト。関連付けられたオブジェクトが存在しない場合は nullThe BindingExpression object associated with the given property or null if none exists. PriorityBindingExpression オブジェクトがプロパティに設定されている場合は、ActiveBindingExpression が返されます。If a PriorityBindingExpression object is set on the property, the ActiveBindingExpression is returned.


target パラメーターと dp パラメーターを null にすることはできません。The target and dp parameters cannot be null.

Clickの例は、 GetBindingExpressionメソッドを使用してを取得BindingExpressionし、 DataItemプロパティを呼び出してバインディングソースオブジェクトにアクセスするイベントハンドラーの実装を示しています。The following example shows the implementation of a Click event handler that uses the GetBindingExpression method to obtain the BindingExpression and then calls the DataItem property to access the binding source object.

はバインディングターゲットオブジェクトTextであり、はバインディングターゲットプロパティです。 TextBlock SavingsTextThe TextBlockSavingsText is the binding target object and Text is the binding target property.

private void OnRentRaise(Object sender, RoutedEventArgs args)
  // Update bills
  System.Random random = new System.Random();
  double i = random.Next(10);
  BindingExpression bindingExpression =
    BindingOperations.GetBindingExpression(SavingsText, TextBlock.TextProperty);
  SDKSample.NetIncome sourceData = (SDKSample.NetIncome) bindingExpression.DataItem;
  sourceData.Rent = (int)((1 + i / 100) * (double)sourceData.Rent);
Private Sub OnRentRaise(ByVal sender As Object, ByVal args As RoutedEventArgs)
    Dim _random As New System.Random()
    Dim num1 As Double = _random.Next(10)
    Dim expression1 As BindingExpression = BindingOperations.GetBindingExpression(Me.SavingsText, TextBlock.TextProperty)
    Dim income1 As NetIncome = DirectCast(expression1.DataItem, NetIncome)
    income1.Rent = CInt(((1 + (num1 / 100)) * income1.Rent))
End Sub


オブジェクトBindingExpressionは、バインディングソースとバインディングターゲットの間の接続を維持します。The BindingExpression object maintains the connection between the binding source and the binding target. BindingExpressionオブジェクトを取得するには、この静的メソッドを呼び出すかGetBindingExpression 、データバインドFrameworkElementまたはFrameworkContentElementオブジェクトに対してメソッドを呼び出します。You can obtain the BindingExpression object by calling this static method or by calling the GetBindingExpression method on a data-bound FrameworkElement or FrameworkContentElement object.