Спонсор: Microsoft
Опубликован: 31.08.2006 | Доступ: свободный | Студентов: 3925 / 218 | Оценка: 4.14 / 3.89 | Длительность: 39:16:00
ISBN: 978-5-9570-0021-3
Лекция 21:

Представление данных с помощью элемента управления DataGrid

< Лекция 20 || Лекция 21: 123 || Лекция 22 >
Аннотация: В этой лекции вы продолжите работать с функциями Microsoft Visual Basic .NET для программирования баз данных, а также полезными классами и объектами ADO.NET. В частности, вы узнаете, как использовать элемент управления DataGrid

В этой лекции вы узнаете, как:

  • отображать в форме Windows записи из базы данных в виде таблицы;
  • сортировать записи базы данных по столбцам;
  • изменять формат и цвет ячеек в сетке данных;
  • разрешить вносить изменения в ячейки сетки данных и записывать обновления в саму базу данных.

В "Введение в ADO.NET" вы узнали, как для установки соединения с базой данных Microsoft Access и отображения полей из этой базы данных в форме Windows использовать техники программирования баз данных Microsoft ADO.NET. Вы также узнали, как добавлять в форму навигационные кнопки, такие, как Первая запись, Последняя запись, Предыдущая запись и Следующая запись, которые являются механизмом для просмотра записей из базы данных. В этой лекции вы продолжите работать с функциями Microsoft Visual Basic .NET для программирования баз данных, а также полезными классами и объектами ADO.NET. В частности, вы узнаете, как использовать элемент управления DataGrid, который представляет одновременно несколько полей и записей базы данных.

Что нового в Visual Basic .NET?

  • В Visual Basic 6 для отображения информации из баз данных в форме было несколько элементов управления сетками данных, включая FlexGrid, Hierarchical FlexGrid и DataGrid. В Visual Basic .NET элемент управления DataGrid является единственным элементом управления в стиле электронной таблицы, предназначенным для отображения записей базы данных.
  • Элемент управления DataGrid, поставляемый с Visual Basic .NET, довольно сильно отличается от элемента управления DataGrid, поставлявшегося с Visual Basic 6. Одним из важнейших усовершенствований является то, что элемент управления DataGrid из Visual Basic .NET не требует команд, специфических для данных, так как все операции доступа к данным выполняют объекты адаптера данных набора данных. Однако, кроме того, в новом элементе управления DataGrid изменились и многие знакомые свойства и методы. Чтобы увидеть список этих изменений, обратитесь к разделу "DataGrid Control Changes in Visual Basic .NET" (Изменения в элементе управления DataGrid в Visual Basic .NET) справочной системы Visual Basic .NET.

Использование DataGrid для отображения записей базы данных

Элемент управления DataGrid представляет информацию в виде сетки из строк и столбцов, которая отображает данные, как, например, в приложениях Microsoft Excel или Microsoft Access. Элемент управления DataGrid может быть использован для отображения любого типа табличных данных: текста, чисел, дат или содержимого массива. В этой лекции вы будете использовать DataGrid отображения полей и записей базы данных Students.mdb. Эта таблица содержит структурированную информацию о студентах, вы начали использовать ее в "Введение в ADO.NET" . Вы начнете с заполнения текстом из базы данных простого объекта сетки данных, а затем установите несколько форматирующих опций. Затем вы перейдете к сортировке записей и изучению того, как записать изменения, сделанные в сетке данных, обратно в базу данных.

Элемент управления DataGrid связывается с информацией из базы данных через свои свойства DataSource и DataMember. Эти свойства будут содержать полезную информацию только после того, как ваша программа установит соединение с требуемым источником данных с помощью адаптера данных и набора данных. (Инструменты и процессы, применяемые при этом соединении, были подробно описаны в "Введение в ADO.NET" ; если вы сомневаетесь в том, как установить это соединение, прочтите раздел "Программирование баз данных с использованием ADO.NET" "Введение в ADO.NET" .) Когда объект сетки данных будет связан с требуемым источником данных, можно заполнить этот объект с помощью метода Fill объекта адаптера данных. Синтаксис метода Fill имеет следующий вид:

OleDbDataAdapter1.Fill(DsInstructors1)

Следующие упражнения демонстрируют, как с помощью объекта сетки данных вы можете отобразить таблицу Instructors базы данных Students.mdb.

Установка соединения с таблицей Instructors

  1. Запустите Microsoft Visual Studio и создайте в папке c:\vbnet03sbs\ Гл.20 новый проект с именем My DataGrid Sample. В среде разработки появится новый проект.
  2. В меню View (Вид) щелкните на команде Server Explorer (Обозреватель серверов). В среде разработки откроется окно Server Explorer (Обозреватель серверов). Если вы только что выполнили упражнения из "Введение в ADO.NET" , в Server Explorer (Обозревателе серверов) в узле Data Connections (Подключения данных) будет находиться текущее соединение с базой данных Access, которая называется Students.mdb. Если на этом соединении изображен красный символ "x", это означает, что соединение не является текущим, но если вы щелкните на узле ACCESS, оно снова установится.

    Примечание. Если вы сейчас видите соединение с базой данных Students.mdb, не выполняйте шагов 3-7. Я включил шаги 3-7 только для тех читателей, которые не выполняли упражнения из "Введение в ADO.NET" , или тех, кто выполнил их некоторое время назад и не видит сейчас установленного соединения с базой данных. Если вы видите действующее соединение с базой данных, продолжите работу с шага 8.
  3. Щелкните в Server Explorer (Обозревателе серверов) на кнопке Connect To Database (Подключиться к базе данных). Кнопка Connect To Database (Подключиться к базе данных) помогает установить в вашей программе соединение с базой данных.
  4. Щелкните на закладке Provider (Провайдер) диалогового окна Data Link Properties (Свойства соединения с данными), а затем щелкните на элементе Microsoft Jet 4.0 OLE DB Provider.
  5. Щелкните на кнопке Next (Далее), чтобы отобразить закладку Connection (Соединение) диалогового окна Data Link Properties (Свойства соединения с данными). На этой закладке вы должны указать имя и расположение базы данных Access, которую вы планируете использовать - Students.mdb.
  6. Щелкните на кнопке многоточия рядом с полем Select Or Enter A Database Name (Выберите или введите имя базы данных), выберите базу данных Students.mdb, расположенную в папке c:\vbnet03sbs\ Гл.19, и щелкните на Open (Открыть).
  7. Щелкните в диалоговом окне Data Link Properties (Свойства соединения с данными) на OK. Visual Studio создаст соединение и добавит в Server Explorer (Обозревателе серверов) узел, представляющий вашу базу данных.
  8. Щелкая на знаках "плюс" (+), откройте в Server Explorer (Обозревателе серверов) узел Data Connections (Подключения данных), затем узел ACCESS, а затем узел Tables (Таблицы). В Server Explorer (Обозревателе серверов) появится структура базы данных Students, показанная ниже.


    Теперь создайте для таблицы Instructors базы данных адаптер данных.

  9. Откройте окно Область элементов, щелкните на закладке Data (Данные), а затем перетащите в форму элемент управления OleDbDataAdapter. Когда вы перетаскиваете этот элемент управления в форму, Visual Studio запускает Data Adapter Configuration Wizard (Мастер конфигурации адаптера данных).
  10. Чтобы согласиться с открывшимся окном, щелкните на кнопке Next (Далее).
  11. Убедитесь, что в диалоговом окне Choose Your Data Connection (Подключение для использования мастером) выбрано ваше соединение с Students.mdb, а затем щелкните на Next (Далее).
  12. Убедитесь, что в диалоговом окне Choose A Query Type (Выберите способ доступа к базе данных) выбрана опция Use SQL Statements (Использовать инструкции SQL), а затем щелкните на Next (Далее). Вы увидите диалоговое окно, которое запрашивает у вас оператор SQL SELECT.
  13. Введите в текстовое поле следующий оператор SELECT:

    SELECT
    	Extension,
    	Instructor,
    	InstructorID,
    	PhoneNumber
    FROM
    	Instructors

    Этот оператор будет получать из таблицы Instructors базы данных Students.mdb поля Extension, Instructor, InstructorID и PhoneNumber и загружать их в ваш адаптер данных. Ваше диалоговое окно будет выглядеть так.


  14. Чтобы увидеть результаты работы мастера, щелкните на кнопке Next (Далее). Мастер должен успешно создать правильные операторы SQL ( SELECT, INSERT, UPDATE и DELETE ) и связи с таблицей. Если возникнут какие-либо ошибки, щелкните на кнопке Back (Назад) и удостоверьтесь в правильности написания оператора SQL.
  15. Чтобы добавить завершенные объекты адаптера данных и соединения в область компонент под вашей формой, щелкните на кнопке Finish (Готово). Если вам будет задан вопрос, хотите ли вы включить в созданную вами строку соединения пароль, ответьте, что нет. В этом примере приложения пароль не требуется, но вы можете использовать его в качестве защитного механизма в будущих приложениях баз данных. Теперь вы должны создать объект набора данных для представления в программе таблицы Instructors.
  16. Щелкните на форме, чтобы убедиться, что она активна, а затем щелкните на команде Generate Dataset (Создать Dataset) в меню Data (Данные). Появится диалоговое окно Generate Dataset (Создать Dataset).
  17. В поле New (Создать) установите имя нового набора данных равным DsInstructors1. Проверьте, что установлен флажок Add This Dataset To The Designer (Добавить этот dataset в конструктор) так, что Visual Studio добавить новый набор данных в область компонент.
  18. Чтобы создать набор данных для таблицы Instructors и добавить его в ваш проект, щелкните на OK. Набор данных появится в области компонент рядом с объектами соединения и адаптера данных, как показано ниже.


    Когда вы установили соединение с таблицей Instructors, можно отобразить записи с помощью элемента управления DataGrid.

< Лекция 20 || Лекция 21: 123 || Лекция 22 >
Жанболат Шаймерден
Жанболат Шаймерден

Можно ли выбирать язык для надписей и команд в среде разработки?

Татьяна Медкова
Татьяна Медкова
Россия, Иркутск