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

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 355 356 357 358 359 360 < 361 > 362 363 364 365 366 367 .. 404 >> Следующая


Теперь нужно перейти к странице vote.aspx. Для ее создания VS следует воспользоваться пунктом Add Web Form меню Project в Visual Studio.NET. Убедившись,
770__________________________________________________________Практический прилtap

что в окне диалога выбран пункт Web Form, введем vote.aspx в ноле Name (см. рис. слева).

Visual Studio.NET сгенерирует оба файла — vote.aspx И voue.aspx.cs (файл с кодом поддержки), а также откроет файл vote.aspx для редактирования, Файл vote.aspx практически идентичен default.аэрх; он представляет собой чистую страницу, содержащую управляющий элемент Label, в который будет помещен текст, представляющий данную страницу. Обратите внимание на то. что теги форм серверной стороны были удалены вручную за ненадобностью:

Page language=*ct* Codebehind=*v<pte.aspx,cs* AutoEventWireup-"false*

tnherits=Pollw.vot<** %>

<JDQCTYPE HTML PUBLIC ‘-//W3C//DTD HTML 4.0 Transitional//EK* >

<H?AD>

<meta name ="GEHERATOR" Contenc="Microsoft Visual Studio 7.0->

<meta name *¦ CODI3__LftNGUAGB" Content=*C|,>

<meta name ="vs_defaultClientScript* content="JavaScript (ECMAScript)¦> <meta name -*va_targetSchema*

content*"http://schemas.iBicrosoft.com/intellieense/ie5- 'r

</HEAD>

<BODY>

<aep:Label id="titleLabel’ runet**eerver»x/aep:Label>

<br />

<br />

<aep:Panel id=,resultsPanel’ runat“"server"></aeptPanel>

</BGDY>

Точно так же, как и для default.aspx, необходимо добавить для управляющих элементов следующие объявления: .

public class vote : System.Web.HI.Page {

protected System.Web.UI.WebControls.Label titleLabel; protected System.Web.UI.WebControls.Panel resultsPanel;

Теперь следует приступить к рассмотрению метода Page_Load(). Он должен вставить название страницы, которая будет ныполе1Ять повторный просмотр вопроса текущего опроса, а затем выводить все ответы с указанием чнела голосов, которые удалось собрать каждому из них. Сначала мы создаем экземпляр объекта poll посредством метода current(), в результате чего получается объект, в котором содержатся данные, касающиеся активного в настоящий момент опроса, взятые из ХМ L-файла:

private void Page_Load(object sender. System. EventArgs e) t

Poll aPoll * Poll.Current О;
Практический пример 1 — web-сайт для проведения опросов_______________________________________771

В следующей строке мы используем объект Request класса Расе (от которого наследуется данная страница) и с помощью семейства Querystring получаем доступ к параметрам, хранящимся в JJRL в строке запроса:

string parameter = Hequeet,QueryString[*ld'] ;

Далее нужно произвести проверку того, не равно ли значение id нулю. Если это значение не нуль, то следует делать попытку зарегистрировать поданный голос; после чего в любом случае перейти к выводу на экран текущих результатов опроса, Обратите внимание на то, как мы опять используем метод Parse {) класса int для преобразования строки в целое значение. Этот метод завершится неудачей, если ему будет передана строка, которая не может быть преобразована в целое значение, однако в данном случае уровень контроля за тем, что именно передается странице, очень высок, поэтому едва ли имеет смысл пытаться перехватывать такую ошибку:

if (parameter 1= null)

(

i oil.vote(int.Parse(parameter));

Lit1 )

В следующей строке программы осуществляется присваивание свойства Text управляющему элементу Label для осуществления перехода к странице, где содержится вводный текст данной страницы, в котором вопрос задается повторно. Обратите внимание на то, как в строке используются обратные слэши (‘\’), чтобы включить в состав текста символы “кавычки”

titleLabel.Text = 'Votes ?or APoll. Quest ion +¦ *\*-i

Оставшаяся в методе Page_Load() часть кода предназначается для вывода на экран результатов опроса, прн этом каждый из вариантов ответа выводится на споем обычном месте, а рядом с ним выводится число голосов, которое он собрал. Сначала в нем создается экземпляр объекта таЫе (который представляет собой HTML-таблицу с результатами голосования), затем используется цикл for, в котором просматриваются все ответы, а в качестве ограничителя используется значение свойства Answercount:

Table myTable ¦ new Table 0 i fortint i=l;i<*aPolI.AnewerCcunt,*l+ + )

I

После этого следует свести воедино HTML-таблицу (с помощью щуТаЫе) и информацию, хранящуюся в объекта apoii. Мы создаем новую строку и добавляем ее в таблицу:

TableRow nyTableRow * new Taoie- jw();

myTable.Controls, Add(nvRow); .

Затем нужно создать новую ячейку таблицы, в которой свойство Text будет содержать результат опроса, и добавить эту ячейку в таблицу:

TableCell щуАпеиегСеИ “ new TableCellO ;

myAnswerCel1.Text « aPoll.Answers[iji

myRow. Controls. Add (jnyAnswerCel 1);

После следует осуществить те же действия для счетчика голосов, для чего создать новую ячейку таблицы, присвоить ее свойству Text значение счетчика голосов (присоединяя в конец строки текст -votes'), н добавляя эту ячейку в строку таблицы:
Предыдущая << 1 .. 355 356 357 358 359 360 < 361 > 362 363 364 365 366 367 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

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

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

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

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