Технология Microsoft ADO.NET



           

Вывод связанных таблиц в два элемента DataGrid1 - часть 3


При перемещении по записям таблицы "Туристы" автоматически выводятся связанные записи в таблице "Информация о туристах" ' width="620" height="384">

увеличить изображение
Рис. 9.14.  Готовое приложение Visual2DataGrid2Table. При перемещении по записям таблицы "Туристы" автоматически выводятся связанные записи в таблице "Информация о туристах"

Ключевым моментом здесь является определение связи "Дополнительная_информация" в содержимом элемента dgInfoTourists:

dgInfoTourists.DataMember = "Туристы.Дополнительная_информация";

Эта же связь доступна и в окне родительской таблицы - при нажатии на гиперссылку возвращается связанная запись.

В программном обеспечении к курсу вы найдете приложение Visual2 DataGrid2Table (Code\Glava4\ Visual2DataGrid2Table).

Рассмотрим теперь программную реализацию этого же приложения. Создайте новый Windows-проект и назовите его "Programm2DataGrid2Table". Скопируем из проекта Visual2DataGrid2Table два элемента DataGrid, Splitter и вставим в новую форму. Пространство имен, строки connectionString и commandText будут в точности такие же, как и в предыдущем проекте, - просто скопируйте их. Конструктор формы будет иметь следующий вид:

public Form1() { InitializeComponent(); // Создаем объект dtTourists для таблицы "Туристы" DataTable dtTourists = new DataTable("Туристы"); DataColumn dcTouristID = new DataColumn("Код туриста", typeof(int)); dcTouristID.Unique = true; DataColumn dcLastName = new DataColumn("Фамилия",typeof(string)); DataColumn dcFirstName = new DataColumn("Имя", typeof(string)); DataColumn dcMiddleName = new DataColumn("Отчество", typeof(string)); dtTourists.Columns.AddRange(new DataColumn[] { dcTouristID, dcLastName, dcFirstName, dcMiddleName }); // Создаем объект dtInfoTourists для таблицы "Информация о туристах" DataTable dtInfoTourists = new DataTable("Информация о туристах"); DataColumn dcInfoTouristsID = new DataColumn("Код туриста", typeof(int)); dcInfoTouristsID.Unique = true; DataColumn dcPassport = new DataColumn("Серия паспорта", typeof(string)); DataColumn dcCity = new DataColumn("Город", typeof(string)); DataColumn dcCountry = new DataColumn("Страна", typeof(string)); DataColumn dcPhone = new DataColumn("Телефон", typeof(decimal)); DataColumn dcIndex = new DataColumn("Индекс", typeof(decimal));




Содержание  Назад  Вперед