Спонсор: Microsoft
Опубликован: 22.11.2010 | Доступ: свободный | Студентов: 4111 / 1012 | Оценка: 4.44 / 4.34 | Длительность: 09:23:00
Самостоятельная работа 10:

Создание сложных ленточных форм для работы с данными

< Лекция 10 || Самостоятельная работа 10: 123 || Лекция 11 >
Аннотация: Содержит информацию по созданию усложненных ленточных форм для работы с данными, а также реализацию вычислимых полей.

Цель: научиться создавать сложные ленточные формы для работы с данными

Модернизируем форму для таблицы "Студенты". Сначала программно продублируем кнопки панели навигации, расположенной в верхней части формы. Откройте проект "StudentsDB" и отобразите форму таблицы студенты ( Form4 ). В нижней части формы расположите семь кнопок, как это показано на рис. 20.1.


Рис. 20.1.

В качестве надписей на созданных кнопках (Свойство "Caption" ) задайте как: "Первая", "Предыдущая", "Добавить", "Последняя", "Следующая", "Удалить" и "Сохранить" ( рис. 20.2).


Рис. 20.2.

Дважды щелкните ЛКМ по кнопке "Первая" и в появившемся окне кода формы "Form4" в процедуре "Button1_Click" наберите команду для перехода к первой записи "СтудентыBindingSource.MoveFirst()" ( рис. 20.3).

Дважды щелкните ЛКМ по кнопке "Предыдущая" и в появившемся окне кода формы "Form4" в процедуре "Button2_Click" наберите команду для перехода к предыдущей записи "СтудентыBindingSource.MovePrevious()" ( рис. 20.4).

Дважды щелкните ЛКМ по кнопке "Добавить" и в появившемся окне кода формы "Form4" в процедуре "Button3_Click" наберите команду для добавления новой записи "СтудентыBindingSource.AddNew()" ( рис. 20.5).

Дважды щелкните ЛКМ по кнопке "Последняя" и в появившемся окне кода формы "Form4" в процедуре "Button4_Click" наберите команду для перехода к последней записи "СтудентыBindingSource.MoveLast()" ( рис. 20.6).

Дважды щелкните ЛКМ по кнопке "Следующая" и в появившемся окне кода формы "Form4" в процедуре "Button5_Click" наберите команду для перехода к следующей записи "СтудентыBindingSource.MoveNext()" ( рис. 20.7).

Дважды щелкните ЛКМ по кнопке "Удалить" и в появившемся окне кода формы "Form4" в процедуре "Button6_Click" наберите команду для удаления текущей записи "СтудентыBindingSource.RemoveCurrent()" ( рис. 20.8).

Дважды щелкните ЛКМ по кнопке "Сохранить" и в появившемся окне кода формы "Form4" в процедуре "Button7_Click" наберите команду для сохранения изменений, отображенную на рис. 20.9.

Рассмотрим последнюю процедуру более подробно. Она содержит следующие команды:

  • Me.Validate() - проверяет введенные в поля данные на соответствие типам данных полей;
  • Me.СтудентыBindingSource.EndEdit() - закрывает подключение с сервером;
  • Me.TableAdapterManager.UpdateAll(Me.StudentsDataSet) - обновляет данные на сервере.

Для проверки работы созданных кнопок запустите проект откройте форму "Таблица "Студенты"" и нажмите каждую из кнопок.

Теперь изменим объекты, отображающие поля для более удобного ввода информации. Для начала удалите текстовые поля ввода ( TextBox ), отображающие следующие поля таблицы "Студенты": "Пол", "Родители", "Телефон", "Паспортные данные", "Номер зачетки", "Курс" и "Код специальности". После удаления, перечисленных полей форма, отображающая таблицу "Студенты" примет следующий вид ( рис. 20.10):


Рис. 20.10.

Для отображения полей "Телефон", "Паспортные данные" и "Номер зачетки" будем использовать текстовые поля ввода по маске ( MaskedTextBox ). Объект текстовое поле ввода по маске отсутствует в выпадающем списке объектов для отображения полей в окне "Источники данных", поэтому будем создавать данные объекты при помощи панели объектов ( Toolbox ), а затем подключать их к соответствующим полям вручную. Для создания текстовых полей ввода по маске на панели объектов используется кнопка


Создайте текстовые поля ввода по маске справа от надписей "Телефон", "Паспортные данные" и "Номер зачетки", как это показано на рис. 20.11.


Рис. 20.11.

Теперь у созданных объектов настроим маски ввода. Начнем с объекта, отображающего номер зачетки. На форме выделите соответствующее полю "Номер зачетки" текстовое поле ввода по маске. Для задания маски в меню действий с объектом выберите пункт "Set Mask…" (Установить маску…) ( рис. 20.12).


Рис. 20.12.

Замечание: Для отображения меню действий в верхнем правом углу объекта необходимо нажать кнопку


( рис. 20.12).

< Лекция 10 || Самостоятельная работа 10: 123 || Лекция 11 >
Татьяна Казакова
Татьяна Казакова
Олег Андриевский
Олег Андриевский

Также весьма интересен фильтр данных, вводимый вручную:

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
        If Trim(TextBox1.Text) = "" Then
            Me.СтудентыBindingSource.RemoveFilter()
        Else
            Me.СтудентыBindingSource.Filter = String.Format("{0} LIKE '{1}%'", "ФИО", Trim(TextBox1.Text))
        End If
    End Sub