Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 229

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 223 224 225 226 227 228 < 229 > 230 231 232 233 234 235 .. 404 >> Следующая


Поскольку объект DataSet уже создан, то мы получаем возможность привязать текстовое окно формы к данным, извлеченным из базы данных. Щелкните мышью на текстовом окне txtCuatiD, а затем прокрутите свойства этого окна до подраздела DataBinaings. Если щелкнуть МЫШЬЮ на секции Text внутри DataBindingS, то можно увидеть комбинированное окно, в котором находится dsCustomers! и все столбцы, имеющиеся в таблице. Выбрав q этом окне произвольный столбец, можно привязать соответствующее поле к этому текстовому окну. Это всего лншь означает, что по мерс прокрутки набора данных значения, находящиеся в этом столбце, выводятся в этом окне. Все изменения, которые пользователь вносит в текстовое окно, отображаются также н в объекте DataSet. Объект DataSet не поддерживает постоянного соединения с источником данных; отсюда следует, что сам по себе этот источник не будет обновляться — до тех пор, пока мы не направим с этой целью соответствующий запрос.

В данном примере мы хотим привязать текстовое окно к столбцу CustomeriD; для этого следует выбрать CustomeriD в комбинированном окне (см. рис. справа).

Если теперь вы сохраните и запустите свой проект, то увидите пустое текстовое окно. Почему это так? Разве те данные, с которыми мы работали на протяжении нескольких предшествующих страниц не должны оказаться в нашем распоряжении? Если отвечать на этот вопрос коротко, то нет, не должны. Не следует забывать, что до настоящего момента мы занимались лишь описанием той структуры, которую, как мы предполагаем, будут иметь данные, извлекаемые из таблицы. Мы пока ни разу не попытались описать реальные данные, кроме того, мы пока не давали команды приложению считывать какие-либо данные. Для этого потребуется включить в пример определенный код (на самом деле, это лншь малая часть из тех строк кода, который будет использоваться в данной главе).

Нам необходимо приказать адаптеру данных наполнить объект DataSet. Щелкните мышыо дважды на пустом месте формы. После этого вы окажетесь в диалоге

В ЦШ dsCustomersl Ё-Ц] Customers

РП CompanyName ContactNcrpe

LdiHB .

*- X None JJ
494

Глава IS

hjjlDataJujnipiiH

Customer ID

W

редактирования кода, а курсор будет находится внутри обработчика события “загрузка формы". Введите в этот обработчик событий следующий код:

private void ?rraMain_Load(object sender, System.EventArss e)

< • it Наполнение набора дачных данными, хранящимися //в базе данных Northwind в таблице 'Customers' this. EqlDbDataAdapterl. Fill (this.dsCustomeral ,1,0, ¦Custcxera") ;

>

В этнх строках происходит обращение к методу Fill о адаптера данных. Этот метод осуществляет наполнение объекта DataTabie, находящегося внутри DataSet, данными, полученными от источника данных. Этому методу передаются четыре параметра, Первый параметр — это объект DataSet, который мы собираемся наполнять, в данном примере — это набор данных dscustomeri. Во-вторых, мы указываем, что его наполнение должно начинаться с первой записи. Третий параметр

определяет количество требуемых записей. Если значение названного параметра равняется нулю, то это означает, что должны быть возвращены все имеющиеся записи. Наконец, мы указываем название таблицы, из которой необходимо извлекать данные.

Попробуйте еще раз сохранить и запустить данное приложение. Теперь вы должны увидеть значение поля CustomeriD первой записи (см, рис. слева).

Вывод полной информации

То, что мы можем увидеть первое значение,—это просто замечательно, однако наверняка пользователям кроме этого потребуется узнать название фирмы и имя контактного лица, соответствующих данному ID, поэтому нужно добавить в форму несколько текстовых окон, перечисленных в таблице справа.

Свойство DacaBindings для обоих новых текстовых окон задается точно так же, как для самого первого текстового окна txtCustiD — просто следуетп выбрать

соответствующий столбец а комбинированном окне, которое расположено по соседству с подразделом Text, находящимся под свойством Dataeindings данного текстового окна.

Управляющей элемент Свойство Значенне
Label Коже lblCustNair.e
Text Customer Name (название заказчика)
Textbox Noise txtCuBtNair.e
Text (пусто)
DataBindirigs/Text dsCustcrrersl — Customers . Cornp_myМаше
Ldbel Name lblCcntaetNoir.e
Text Contact Name
Textbox Name txtContdctNair.e
Text (пусто)
DataBindings/Text deCiiBtcaiersl — Customers - Comp зшуNdf&c
Доступ к данным пользователя

495

Ваша форма после этого должна принять вид, подобный изображенному на рисунке справа.

Если теперь запустить эту форму, то можно увидеть в ней дополнительную информацию, извлеченную нз базы данных. На данном этапе можно добавлять (илн оставлять) сколько угодно полей. Для нашего примера достаточно включить три столбца из таблицы, находящейся в адаптере данных. Если нужно выводить большее количество полей, то для этого следует щелкнуть правой кнопкой мыши на адаптере данных н выбрать опцию Configure Data Adapter... (настройка адаптера данных). В результате будет вызван тот же самый мастер Configure Data Adapter, которым мы пользовались ранее и который позволяет изменять число столбцов, извлекаемых нз источника данных.
Предыдущая << 1 .. 223 224 225 226 227 228 < 229 > 230 231 232 233 234 235 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.