BindingOperations.GetBindingExpression Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
BindingExpression Возвращает объект, связанный с указанным целевым свойством привязки для указанного объекта.
public:
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
Параметры
- target
- DependencyObject
Целевой объект привязки, где dp находится.
Целевое свойство привязки BindingExpression , из которого извлекается объект.
Возвращаемое значение
BindingExpression Объект, связанный с заданным свойством или null если он отсутствует.
PriorityBindingExpression Если объект задан в свойстве, ActiveBindingExpression возвращается.
Исключения
Параметры target и dp параметры не могут быть null.
Примеры
В следующем примере показана реализация обработчика Click событий, использующего GetBindingExpression метод для получения BindingExpression , а затем вызывает DataItem свойство для доступа к исходному объекту привязки.
Это TextBlockSavingsText целевой объект привязки и Text является целевым свойством привязки.
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 поддерживает соединение между источником привязки и целевым объектом привязки. Объект можно получить BindingExpression , вызвав этот статический метод или вызвав GetBindingExpression метод в привязанном FrameworkElement к данным или FrameworkContentElement объекте.