5 Пример выполнения задания. 5.1 Визуальное проектирование диалогового окна. 5.2 Проектирование программного кода. private void UpdateContacts()
5 Пример выполнения задания Задание. Реализовать с помощью технологии ADO. NET программный интерфейс управления базой данных, созданной в предыдущем задании на контрольную работу. Предусмотреть возможность добавления, редактирования, удаления, фильтрации записей.
5. 1 Визуальное проектирование диалогового окна Внешний вид работающего приложения приведен на рисунке 2. 3. Настройки таблиц dataGridView1 и dataGridView1 приведены в описании предыдущей контрольной работы. Текстовые поля FamTextBox и NameTextBox используются для добавления новой записи или редактирования записи, выделенной в таблице. Для удобства редактирования при выделении строки в таблице данные об имени и фамилии человека копируются в соответствующие текстовые поля.
Рисунок 2. 3 – Главная форма приложения
5. 2 Проектирование программного кода 5. 2. 1 Обновление содержимого главного окна приложения Обновлять содержимое главного окна необходимо, когда пользователь производит какие-либо изменения с записями базы данных: добавление, редактирование, удаление записей таблиц, а также при открытии соединения с базой данных в начале работы программы. Для обновления содержимого формы следует добавить в класс формы метод UpdateContacts(). Тип возврата метода – void, вид доступа – private, параметров нет. Программный код метода следующий:
private void UpdateContacts()
{ //обновить содержимое таблиц базы данных oleDbDataAdapter2. Update(dataSet1); oleDbDataAdapter1. Update(dataSet1); //очистить DataSet dataSet1. Clear(); //заполнить таблицы в объекте DataSet oleDbDataAdapter1. Fill(dataSet1. Contacts); oleDbDataAdapter2. Fill(dataSet1. Phones); //очистить содерижмое списка фамилий FamComboBox. Items. Clear(); //заполнить список фамилий значениями из таблицы foreach (DataRow row in dataSet1. Contacts. Rows) FamComboBox. Items. Add(row[" Fam" ]); //в списке фамилий - ни одна фамилия не выделена FamComboBox. Text = " "; } Прежде всего, необходимо сохранить сделанные в программе изменения непосредственно в базу данных. Делается это с помощью метода Update(), применяемого к адаптерам таблиц. Далее содержимое объекта DataSet очищается ( Clear() ) и заполняется заново методом Fill(). Выпадающий список FamComboBox содержит список фамилий людей. При изменении содержимого базы данных его также нужно обновить. Сначала его строки методом Clear() очищаются, а затем заполняются заново фамилиями из обновленной таблицы (метод Add() ). Цикл foreach используется для просмотра всех записей таблицы. Так как обновление данных должно выполняться и при запуске программы, то содержимое обработчика события FormLoad изменится следующим образом:
private void Form1_Load(object sender, EventArgs e) { oleDbConnection1. Open(); //открыть соединение UpdateContacts(); //обновить главное окно } 5. 2. 2 Добавление нового контакта Добавление нового контакта происходит тогда, когда пользователь щелкает кнопку Добавить, расположенную в верхней части главного окна приложения (рисунок 2. 3). Предварительно пользователь должен ввести имя и фамилию человека в поля Имя и Фамилия соответственно. Для этой кнопки необходимо подготовить следующий программный код:
private void AddContactButton_Click(object sender, EventArgs e) { //если текстовые поля не пусты,
if (FamTextBox. Text! = " " & & NameTextBox. Text! = " " ) { //то создать новую запись в таблице Contacts, DataRow row = dataSet1. Contacts. NewRow(); //заполнить ее столбцы row[" Fam" ] = FamTextBox. Text; row[" Name" ] = NameTextBox. Text; //и добавить запись в таблицу dataSet1. Contacts. Rows. Add(row); //обновить содержимое главного окна UpdateContacts(); } }
Здесь нужно убедиться в том, что пользователь ввел как имя, так и фамилию. Если поле FamTextBox или NameTextBox пустое, обработчик события завершает свою работу без выполнения других дополнительных действий. В том случае, когда пользователь ввел все необходимые данные, обработчик события создает новую строку в таблице Contacts. Для этого используется метод NewRow(). На следующем этапе введенные строки имени и фамилии записываются в соответствующие столбцы строки. Подготовленная таким способом строка добавляется в таблицу. Далее обработчик события последовательно вызывает метод с именами UpdateContacts(), который предназначен для обновления содержимого формы приложения. Этот метод описан далее.
5. 2. 3 Добавление номера телефона Выделив в верхнем списке имя человека, пользователь может добавить для него один или несколько телефонов. Эта операция выполняется при помощи кнопки Добавить, расположенной возле списка телефонов. Вот обработчик событий для этой кнопки:
Воспользуйтесь поиском по сайту: ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|