Объект BindingContext является членом семейства объектов Windows Forms (а точнее, членом пространства имен System.Windows.Forms платформы .NET Framework) и содержит множество полезных свойств и методов. Например, объект BindingContext можно использовать для определения количества записей в источнике данных так, как описано ниже.
1. Создайте ярлык lblDataStatus с помощью элемента управления Label с пустой строкой в свойстве Text.
2. В коде формы создайте подпрограмму ShowDataStatus с указанным ниже кодом, которая будет отображать текущее расположение записи и общее количество записей в ярлыке lblDataStatus.
>Private Sub ShowDataStatus()
> With Me.bindingContext(DsCustomer1, "tblCustomer")
> lblDataStatus. Text = "Record " + s.Position + 1 & " of " & .Count
> End With
>End Sub
3. Поместите вызов этой подпрограммы ShowDataStatus в подпрограммы обработки событий загрузки формы (Forml_Load) и щелчков мыши на обеих кнопках (btnNext_Click и btnPrevious_Click). Это позволит отображать обновленную информацию о текущем количестве записей и текущей записи при загрузке формы и после каждого перемещения к другой записи. Учтите, что отсчет текущего номера записи (свойство Position объекта DataBindings) начинается с нуля (как и во всех коллекциях на платформе.NET). Поэтому для получения реального номера записи следует прибавить к нему 1.
4. Запустите приложение и попробуйте перейти к разным записям таблицы. Тогда в ярлыке будет отображено общее количество записей в таблице и номер текущей записи.
Программный способ связывания данных
С помощью Windows Forms связывание данных можно организовать программно. Это позволяет добиться более высокой гибкости в ситуациях, когда расположение полей неизвестно во время создания приложения либо требуется явно выразить связь между элементами управления и полями другим способом, чем предлагается в интегрированной среде разработки.
Чтобы организовать связь с элементами управления пользовательского интерфейса, следует создать метод Add объекта DataBindings элемента управления Windows Forms. В листинге 1.1 показан типичный способ создания связи с данными в приложении для работы с базами данных.
>Private Sub Form1_Load (ByVal sender As System.Object, ByVal e As _
> System.EventArgs) Handles MyBase.Load
> txtFirstName.DataBindings.Clear()
> txtLastName.DataBindings.Clear()
> txtFirstName.DataBindings.Add("Text", DsCustomer1, "tblCustomer.LastName")
> txtLastName.DataBindings.Add("Text", DsCustomer1, "tblCustomer.LastName")
> sqlAdapterl.Fill(DsCustomer1)
> ShowDataStatus()
>End Sub
(Убедитесь в том, что для свойства ConnectionString объекта SqlConnection1 задана верная строка подключения с используемым вами сервером SQL Server. Дело в том, что в коде этого примера, который можно скопировать по адресу: http://www.williamspublishing.com указана строка подключения к серверу SQL Server, установленному на компьютере ROCKO автора книги. – Прим. ред.)
Обратите внимание, что вызовы метода Clear элементов управления коллекции DataBindings не обязательно создавать в разрабатываемом приложении. Они нужны в этом случае, потому что связь с данными ранее задана с помощью окна Properties.