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

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 366 367 368 369 370 371 < 372 > 373 374 375 376 377 378 .. 404 >> Следующая


III </вшгапагу>

public class PollControi i WebControl ( ' protected override void Render (HtmlTextWriter output)

{ -

output.Write('This ia my Poll Control')]

/ Это упраьлясдий элемент для проведения опросов /

)

)
Практический пример 1 — web-сайт для проведения опросов

791

Заметьте, что все, что на самом деле необходимо выполнить,— это создать класс, который наследуется от System.web.ui.WebControls.webcontrol. Сделав это, мы реализуем переопределение метода Render о, в котором генернруем HTML, который мы планируем выводить. Существует также возможность написать такой управляющий элемент, который будет создавать себя сам посредством объединения других управляющих элементов, но в настоящем примере мы будем

Попытаемся вставить в страницу простой нестандартный управляющий элемент и посмотреть, что для этого придется сделать. Во-первых, добавим к нашему проекту новую страницу, которую назовем defauit2.aspx и которую мы будем использовать в качестве контейнера нестандартного управляющего элемента. Это достигается за счет использования пункта Add Web Form из меню Project, как показано на рисунке слева.

Мы приведем в порядок содержимое defaui.t2.aspx, чтобы ничего не усложнять и четко представлять себе, что происходит:

<t9 Page language *cl* Codebehind= default2.aspx.es* ..........%>

<html>

<head>

</head>

<body>

</body>

</html>

Для того чтобы вставить управляющий элемент для проведения опросов в страницу, следует добавить всего две строки:

<%9 Page language-*cl¦ Codebehind= default2.aspx.es* .......... %>

<10 Register TaaFrefix*"Wrox* Namespace**PollW* Assembly^’PollW* %>

<html>

<head>

</head>

<body>

<Wrox:PollControll runat»* server* ></Wrox iPollContra1>

</body>

</html>

В первой нз двух добавленных строк объявляется префикс тегов TegPrefix с именем Wrox. Это означает, что если ASP.NET встречает на странице любой серверный управляющий элемент, который начинается с <wrox:, то система начинает осуществлять поиск в пространстве имен poiiw в модуле poiiw управляющего элемента с таким же именем. В данном случае мы указали <wrox!Pollcontroi>, поэтому ASP.NET будет осуществлять поиск в пространстве имен poiiw класса PollControi. Вторая добавленная строка представляет собой серверный управляющий элемент, и именно в ней мы фактически вставляем опрос в страницу. Обратите

генерировать HTML.

ЩЕмтт

2Sl

St; ¦¦ j

Web Ой»

Ш

Calnpontr* Beta Form Ml Set Clou Wired

W«bLhw МГЦ. Pat* frimtm CortrcJ

йш

(IV.

н*
792_________________________________________________________Практический пример

внимание на то, что мы включили в нее атрибут rnnat. Если же теперь открыть файл default2.aspx в своем браузере, то можно увидеть текст, выводящийся методом Poiicontroi Render () (см. рис. слева).

Мы успешно вставили в страницу нестандартный управляющий элемент; теперь добавим в метод Render о, находящийся в файле PoIlControl.es, код, который позволит выводить опрос на экран. Упомянутый код оказывается практически идентичным коду для “файла поддержки" defaait.aapx.cs. Не забудьте, что в начале файла необходимо поместить оператор using Polling:

protected override void Render(HtmlTextWriter output)

[ . string Html * •

Poll aPoll • Poll.Current ()i

Html +* aPoll.Question + *<br /><br />";

for(int i^lf i<=aPol1.AnawerCount;i++)

{

HtwlLink +- '<* href=\*vote.eepx?id="-t-i+"\">Vote</a>",'

HtmlLink +•= *ыЬвр;* + aPollAnswersli] + "<br />'t

}

" output.Write(Html);

J

Если теперь построить проект заново и открыть файл defauit2.aspx, то можно увидеть то же самое, что и в случае default.азрх за исключением того, что эту версию гораздо проще использовать повторно. Все, что необходимо сделать для того чтобы использовать ее на некотором сайте. — это сначала убедиться в доступности файла vote.aspx, затем убедиться в доступности модулей, содержащих классы рои и Poiicontroi, после чего просто добавить две строки кода к странице ASP.NET. В результате этнх действий получилась некая оболочка, объемлющая отдельные функциональные возможности. Мы назвали ее управляющим web-элементо,ч. Этот полход позволяет объединять различные функциональные возможности и облегчает их повторное использование. Результат можно видеть на рисунке справа.

I SUtL.ii:.'' ¦ iuialhort/PG" -j/iM-'iflir.iij.jin - Mltr5si)(f luli.i I'ic-t ЕяйО.
0la in Urn Iocis - - o
¦iab&ck * ^ fQ ¦© {Я 1 ^Search {^Favorites n
АДОвя htlp:|f/locaB»rtfpcew/defauft2.4Spx | U*s J
This is my Poll Control 3 zl
m*™ I ] Г '[g-total tfJtietiM Ж
Практический пример 1 — web-сайт для проведения опросов

7 93

Трехзвенность и приложение Poll

Консольное Приложение Приложение
приложение Window* Forme WebForm

Уровень

представления

Уровень бизнес-логики

Уровень

данных

Web-службы

Нами создано приложение, которое может функционировать и как консольное приложение, и как web-служба, и как приложение Windows Forms, и как Интернет-интерфейс ASP.NET. Для того чтобы наглядно представлять себе, как все эти
Предыдущая << 1 .. 366 367 368 369 370 371 < 372 > 373 374 375 376 377 378 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

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

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

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

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