FrameworkElement.SetBinding(DependencyProperty, BindingBase) Метод

Определение

Присоединяет привязку к FrameworkElement, используя предоставленный объект привязки.

void SetBinding(DependencyProperty const& dp, BindingBase const& binding);
public void SetBinding(DependencyProperty dp, BindingBase binding);
function setBinding(dp, binding)
Public Sub SetBinding (dp As DependencyProperty, binding As BindingBase)

Параметры

dp
DependencyProperty

Идентификатор свойства зависимостей свойства, привязанного к данным.

binding
BindingBase

Привязка, используемая для свойства .

Примеры

В этом примере устанавливается привязка к свойству зависимостей объекта путем вызова SetBinding.

// Create the source string.
string s = "Hello";

// Create the binding description.
Binding b = new Binding();
b.Mode = BindingMode.OneTime;
b.Source = s;

// Attach the binding to the target.
TextBlock MyText = new TextBlock();
MyText.SetBinding(TextBlock.TextProperty, b);

Комментарии

Этот метод является удобным методом, который вызывает BindingOperations.SetBinding, передавая текущий экземпляр в target качестве параметра.

Для обеспечения совместимости binding параметр имеет тип BindingBase, но в среда выполнения Windows всегда передается экземпляр Binding. Класс Binding является производным от BindingBase.

Параметр dp принимает идентификатор свойства зависимостей. Дополнительные сведения о свойствах зависимостей и о том, как значение DependencyProperty служит идентификатором, см. в статье Общие сведения о свойствах зависимостей.

Вы можете привязаться к пользовательским свойствам зависимостей или настраиваемым присоединенным свойствам. Идентификатор, который вы передаете dp в качестве параметра, не обязательно должен быть среда выполнения Windows определенным свойством.

Будет ли привязка, созданная из кода, использовать действующий контекст данных, зависит от соображений времени существования объекта. Например, значение DataContext , заданное из XAML, будет недоступно до синтаксического анализа XAML. В этом случае может потребоваться использовать обработчик Loaded для добавления привязок из кода.

Примечание

SetBinding Вызов метода и передача нового объекта Binding не обязательно приведет к удалению существующей привязки. Вместо этого следует сначала вызвать метод DependencyObject.ClearValue , а затем вызвать SetBinding.

Привязка к присоединенным свойствам

Привязки данных можно поместить в любые присоединенные свойства, поддерживаемые целевым объектом. Технически DependencyObject поддерживает все возможные присоединенные свойства, но обычно привязка устанавливается только для присоединенного свойства, соответствующего этому объекту или вашему сценарию. Например, можно задать привязку для Grid.Row только в том случае, если предполагается, что целевой элемент имеет родительский элемент Grid , который будет использовать эти сведения. Укажите параметр dp в качестве идентификатора свойства зависимостей, который существует в классе владельца присоединенного свойства (например Grid.Row , это идентификатор Grid.RowProperty). Вы не найдете этот идентификатор в целевом объекте, так как это присоединенное свойство. Дополнительные сведения о присоединенных свойствах см. в статье Общие сведения о присоединенных свойствах.

Применяется к

См. также раздел