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


Общие сведения о компоненте BindingSource

Компонент BindingSource разработан для упрощения процесса привязки элементов управления к базовым источникам данных. Компонент BindingSource действует и как канал передачи, и как источник данных для привязки других элементов управления. Он содержит абстракцию подключения к данным используемой формы, присутствуя в командах и базовом списке данных. Кроме того, можно добавлять данные непосредственно в этот компонент, поскольку сам он выступает в качестве источника данных.

Компонент BindingSource в качестве посредника

Компонент BindingSource выступает в качестве источника данных для некоторых или всех элементов управления в форме. В Visual Studio компонент BindingSource можно привязать к элементу управления с помощью свойства DataBindings, которое можно настроить в окне Свойства. Дополнительные сведения см. в следующем разделе. Практическое руководство. Связывание элементов управления Windows Forms с компонентом BindingSource с помощью конструктора и Практическое руководство. Связывание элементов управления Windows Forms с компонентом BindingSource с помощью конструктора.

Можно привязать компонент BindingSource как к простым источникам данных, например к одному свойству объекта или базовой коллекции, как то ArrayList, так и к сложным источникам данных, например к таблице базы данных. Компонент BindingSource действует в качестве посредника, обеспечивающего привязку и работу служб оперативного управления. Во время разработки или выполнения можно привязать компонент BindingSource к сложному источнику данных путем присвоения его свойствам DataSource и DataMember значений базы данных и таблицы соответственно. В следующем примере описывается использование компонента BindingSource в существующей архитектуре привязки данных.

Источник привязки и архитектура привязки данных

Примечание

При выполнении некоторых действий во время разработки, например при перетаскивании базы данных из окна данных в пустую форму, одна единственная операция позволяет создать компонент BindingSource, привязать его к базовому источнику данных и добавить элементы управления данными.Дополнительные сведения см. в следующем разделе. Общие сведения об отображении данных и Привязка элементов управления Windows Forms к данным в Visual Studio и Привязка элементов управления Windows Forms к данным в Visual Studio.

Компонент BindingSource в качестве источника данных

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

Кроме того, можно написать код для реализации пользовательской функции "AddNew" с использованием события AddingNew, инициируемого при вызове метода AddNew перед добавлением элемента в список. Дополнительные сведения см. в разделе Архитектура компонента BindingSource.

Навигация

Если необходимо перемещение по данным в форме, компонент BindingNavigator обеспечивает переход по данным и управление ими в координации с компонентом BindingSource. Дополнительные сведения см. в разделе Элемент управления BindingNavigator (Windows Forms).

Управление данными

Компонент BindingSource действует в качестве CurrencyManager для всех своих привязок, что позволяет ему обеспечить доступ к текущей информации и сведениям о позиции для данного источника данных. В приведенной ниже таблице перечислены элементы, используемые компонентом BindingSource для доступа к базовым данным и управления ими.

Элемент

Описание

Свойство Current

Возвращает текущий элемент источника данных.

Свойство Position

Получает или задает текущую позицию в базовом списке.

Свойство List

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

Метод Insert

Вставляет элемент в список по указанному индексу.

Метод RemoveCurrent

Удаляет текущий элемент из списка.

Метод EndEdit

Применяет незавершенные изменения к базовому источнику данных.

Метод CancelEdit

Отменяет текущую операцию редактирования.

Метод AddNew

Добавляет новый элемент в базовый список. Добавьте этот элемент, если источник данных реализует интерфейс IBindingList и возвращает элемент из события AddingNew. В противном случае, запрос передается методу AddNew списка. Если в качестве базового списка используется не IBindingList, то элемент автоматически создается с помощью открытого стандартного конструктора.

Сортировка и фильтрация

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

Элемент

Описание

Свойство Sort

Если в качестве источника данных используется IBindingList, получает или задает имя используемого для сортировки столбца и порядок сортировки. Если в качестве источника данных используется IBindingListView с поддержкой расширенной сортировки, возвращает имена нескольких используемых для сортировки столбцов и порядок сортировки.

Свойство Filter

Если в качестве источника данных используется IBindingListView, получает или задает выражение, используемое для фильтрации отображаемых строк.

См. также

Ссылки

BindingSource

BindingNavigator

Основные понятия

Архитектура компонента BindingSource

Другие ресурсы

Компонент BindingSource

Элемент управления BindingNavigator (Windows Forms)

Связывание элементов управления Windows Forms с данными

Элементы управления для использования в формах Windows Forms