Поделиться через


Binding Класс

Определение

Предоставляет высокоуровневый доступ к определению привязки, соединяющей свойства целевых объектов привязки (как правило, элементов WPF) и любой источник данных (например, базу данных, XML-файл или любой объект, который содержит данные).

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) обеспечивает простой и последовательный способ представления данных и взаимодействия с ними для приложений. Привязка данных позволяет синхронизировать значения свойств двух разных объектов.

Чтобы установить привязку, используйте Binding класс или один из других классов, наследующих BindingBase. Независимо от объекта привязки и характера источника данных, каждая привязка соответствует модели, показанной на следующем рисунке.

Базовая схема привязки

На рисунке показаны следующие основные понятия привязки данных WPF.

  • Каждая привязка обычно состоит из четырех компонентов: целевого объекта привязки, целевого свойства, источника привязки и Path значения в используемом источнике привязки. Например, если требуется привязать содержимое объекта к свойству TextBox Name объекта Employee, целевой объект — TextBox, целевое свойство — Text свойство , используемое значение — Name, а исходный объект — объект Employee.

  • Целевое свойство должно быть свойством зависимостей. Это также означает, что невозможно привязать поле. Большинство свойств UIElement объектов являются свойствами зависимостей, а большинство свойств зависимостей, за исключением свойств, доступных только для чтения, по умолчанию поддерживают привязку данных. (Только DependencyObject типы могут определять свойства зависимостей, а все UIElement объекты являются производными от DependencyObject.)

  • Хотя на рисунке не указано, следует отметить, что исходный объект привязки не ограничен пользовательским объектом CLR. Привязка данных WPF поддерживает данные в виде объектов CLR и XML. В некоторых примерах источником привязки может быть любой UIElementобъект списка, объект CLR, связанный с ADO.NET данными или веб-службами, или XmlNode, содержащий xml-данные.

Используйте свойство , Mode чтобы указать направление потока данных. Чтобы обнаружить изменения источника в односторонних или двусторонних привязках, источник должен реализовать подходящий механизм уведомления об изменении свойства, INotifyPropertyChangedнапример . Пример см. в разделе Практическое руководство. Реализация уведомления об изменении свойства. Свойство UpdateSourceTrigger задает время обновления источника. Дополнительные сведения см. в разделе Основные понятия привязки данных статьи Общие сведения о привязке данных.

Использование атрибута XAML

<object property="{Binding  declaration}"/>  

Значения XAML

declaration
Ноль или более предложений присваивания атрибутов, разделенных запятыми (,). Дополнительные сведения см. в разделе Общие сведения о расширении разметки привязки или объявлениях привязки.

Конструкторы

Binding()

Инициализирует новый экземпляр класса Binding.

Binding(String)

Инициализирует новый экземпляр класса Binding с начальным путем.

Поля

DoNothing

Используется в качестве возвращаемого значения для указания подсистеме привязки не выполнять никаких действий.

IndexerName

Используется как PropertyName из PropertyChangedEventArgs, указывая, что свойство индексатора изменилось.

SourceUpdatedEvent

Идентифицирует присоединенное событие SourceUpdated.

TargetUpdatedEvent

Идентифицирует присоединенное событие TargetUpdated.

XmlNamespaceManagerProperty

Идентифицирует присоединенное свойство XmlNamespaceManager.

Свойства

AsyncState

Получает или задает непрозрачные данные, передаваемые в диспетчер асинхронных данных.

BindingGroupName

Возвращает или задает имя группы BindingGroup, к которой принадлежит данная привязка.

(Унаследовано от BindingBase)
BindsDirectlyToSource

Возвращает или задает значение, указывающее, следует ли вычислять Path относительно элемента данных или объекта DataSourceProvider.

Converter

Получает или задает используемый преобразователь.

ConverterCulture

Получает или задает язык и региональные параметры, в которых необходимо оценить преобразователь.

ConverterParameter

Возвращает или задает параметр, передаваемый Converter.

Delay

Получает или задает время (в миллисекундах) ожидания перед обновлением источника привязки после изменения значения в целевом объекте.

(Унаследовано от BindingBase)
ElementName

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

FallbackValue

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

(Унаследовано от BindingBase)
IsAsync

Возвращает или задает значение, которое указывает, следует ли объекту Binding получать и задавать значения асинхронно.

Mode

Возвращает или задает значение, указывающее направление потока данных в привязке.

NotifyOnSourceUpdated

Возвращает или задает значение, указывающее, следует ли вызывать событие SourceUpdated, когда значение передается от целевого объекта привязки к источнику привязки.

NotifyOnTargetUpdated

Возвращает или задает значение, указывающее, следует ли вызывать событие TargetUpdated, когда значение передается от исходного объекта привязки к целевому объекту привязки.

NotifyOnValidationError

Возвращает или задает значение, указывающее, следует ли вызывать подключенное к Error событие в привязанном объекте.

Path

Возвращает или задает путь к свойству источника привязки.

RelativeSource

Получает или задает источник привязки, указывая его расположение относительно положения целевого объекта привязки.

Source

Возвращает или задает объект, используемый как источник привязки.

StringFormat

Возвращает или задает строку, указывающую способ форматирования привязки при отображении связанного значения в виде строки.

(Унаследовано от BindingBase)
TargetNullValue

Возвращает или задает значение, используемое в целевом элементе, если значение источника равно null.

(Унаследовано от BindingBase)
UpdateSourceExceptionFilter

Получает или задает обработчик, который можно использовать для предоставления пользовательской логики для обработки исключений, которые механизм привязки находит при обновлении значения источника привязки. Это применимо, только если имеется правило ExceptionValidationRule, связанное с привязкой.

UpdateSourceTrigger

Получает или задает значение, определяющее расписание обновлений источника привязки.

ValidatesOnDataErrors

Получает или задает значение, указывающее, включать ли объект DataErrorValidationRule.

ValidatesOnExceptions

Получает или задает значение, указывающее, включать ли объект ExceptionValidationRule.

ValidatesOnNotifyDataErrors

Получает или задает значение, указывающее, включать ли объект NotifyDataErrorValidationRule.

ValidationRules

Получает коллекцию правил, проверяющих правильность пользовательского ввода.

XPath

Возвращает или задает XPath запрос, возвращающий значение источника привязки XML для использования.

Присоединенные свойства

XmlNamespaceManager

Получает или задает объект XmlNamespaceManager, используемый для выполнения учитывающих пространство имен запросов XPath в привязках XML.

Методы

AddSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Добавляет обработчик для вложенного события SourceUpdated.

AddTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Добавляет обработчик для вложенного события TargetUpdated.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
GetXmlNamespaceManager(DependencyObject)

Возвращает объект диспетчера пространства имен XML, используемый привязкой, присоединенной к указанному объекту.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ProvideValue(IServiceProvider)

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

(Унаследовано от BindingBase)
RemoveSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Удаляет обработчик для вложенного события SourceUpdated.

RemoveTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Удаляет обработчик для вложенного события TargetUpdated.

SetXmlNamespaceManager(DependencyObject, XmlNamespaceManager)

Задает объект диспетчера пространства имен, используемый привязкой, которая подсоединена к предоставленному элементу.

ShouldSerializeFallbackValue()

Возвращает значение, определяющее, должны ли процессы сериализации выполнять сериализацию действующего значения свойства FallbackValue по экземплярам данного класса.

(Унаследовано от BindingBase)
ShouldSerializePath()

Определяет необходимость сохранения значения свойства Path.

ShouldSerializeSource()

Определяет необходимость сохранения значения свойства Source.

ShouldSerializeTargetNullValue()

Возвращает значение, которое указывает, должно ли свойство TargetNullValue быть сериализовано.

(Унаследовано от BindingBase)
ShouldSerializeValidationRules()

Определяет необходимость сохранения значения свойства ValidationRules.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Присоединенные события

SourceUpdated

Возникает, когда значение передается от целевого объекта привязки к источнику привязки, но только для привязок, у которых значение NotifyOnSourceUpdated равно true.

TargetUpdated

Возникает, когда значение передается от источника привязки к целевому объекту привязки, но только для привязок, у которых значение NotifyOnTargetUpdated равно true.

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

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