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

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 381 382 383 384 385 386 < 387 > 388 389 390 391 392 393 .. 404 >> Следующая


protected void CancelAddNew_Click[object sender, EventArgs e)

(

ShowAddNewControls(false);

) .......

а

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

На этом код для данной страницы завершен. Для создания страницы потребовалось не такое уж большое количество кода, особенно по сравнению с кодом, который был бы необходим прн использовании традиционного ASP — даже простое создание многофункционального табличного представления данных потребовало бы несколько сотен (еслн не тысяч) строк сложного кода иа ASP.

Управление подписчиками

Страница для управления подписчиками списков очень похожа на только что проанализированную страницу, поэтому в данном разделе мы остановимся только на ее отличиях. На рисунке (см, стр, 823) страница изображена в том виде, в каком
Практический пример 2 — Менеджер рассылки новостей в режиме онлайн

823

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

Страница Subscribers.aspx

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

Что касается столбцов, то все отличия сводятся к добавлению нескольких новых столбцов с шаблонами, к изменению имени столбца при вызове метода DataBinder. Eval О, а также к изменению определенных свойств некоторых столбцов без шаблонов. Код, относящийся к этой странице, оказывается довольно длинным. Ниже приводится его первая часть, в которой описывается комбинированное окно н кнопка Send Email (отправка электронной почты):

<aep;table id^TableLlata" runat=‘eerver“ CsaClase“*Gri<3_General>

<aap:TableRow> ¦

<aap:TableCell width="50px”

Hor i rental A1 i.gn*= "Center • ><b>Li at: </b></asp: TableCell>

<asp:TableCell width=*280px*

<asp:DropDownList runat=*server" ID=*LietPropDown"

DataTextField-’Name* DataVaIueField=’ID* width="280px* '

Class»"TextBox* AutoPoatBack=”True"

OnSelectedIndexCtianger:,,"ListsDropDown_In<3exChanged" /> </aap:TableCell>

<aap;TableCell*

<asp:Button ruoat="eerver* Text”"Send Email"

ID=,SendEeiail • CflsClaas="Button“

OnClick="SendEnail_Clicli* Width=" lQGpx' />

¦c/aaps TableCell»

<aap:TableRow>

Необходимо обратить внимание на то, что свойству раскрывающегося окна AutoPostBack присвоено значение true. Это приводит к тому, что страница будет отправляться обратно каждый раз, когда пользователь изменяет выбранный элемент. В свою очередь, это влечет за собой наступление события Onseiectedindex-Changed И, соответственно, вызов процедуры LiatsDropDown_IndexChanged().

Остальная часть страницы аналогична тому, что мы виделн раньше. Рассмотрим дополнительные строки, которые были добавлены к объявлению таблицы данных:

<аар:DataCrid id”"SubacrGrid" runat=*server"

A1lowPaging=• True *

PageSize“*20"
824_____________________________________________________________________Практический пример

PagerS ty1е-Ногi ionta1A1ign=“Right*

PagerStyle-PageButtonCounc=*20¦

PayerStyle-Mode='NuroericPages¦

OnPagelndexChanged^'SubscrGricLPageChanged1

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

Код поддержки для Subscribers.aspx

Что касается кода на ASP.NET, то код поддержки для subscriber a .aspx не очень отличается от страницы Lit-ts. В нем появилось несколько строк для работы с вновь добавленными управляющими элементами. Этот код выполняется, когда происходит загрузка страницы:

protected void Page_Load(object sender, EventArge e)

{

// получить ListID из QueryScring string ListID Request.Params ['ListID*\i SubscrGrid.Attributeal'ListlD*] = ListID:

Д? (IPage.IsPostBack)

{

// загрузить все доступные списки в управляющий элемент DropDown

NewsMailer. ListsDB lists “ new NewsHailer. ListsDB (GetConnString ()) ;

DataView rayDV - lists. GetListsO .Tables[QJiDefaultView;

ListsOropDown.DataSource = rayDV;
Предыдущая << 1 .. 381 382 383 384 385 386 < 387 > 388 389 390 391 392 393 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

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

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

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

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