Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЛабРаб_ООП

.pdf
Скачиваний:
145
Добавлен:
27.05.2015
Размер:
1.37 Mб
Скачать

Пам'ятайте, що значення за умовчанням для випадного списку positionRole такі ж, як для робочого (Worker), тому той же метод можна використовувати для ініціалізації списку.

40.Перемкніться на EmployeeForm.aspx у вікні Design View. Виберіть радіо-кнопку bossButton і використайте вікно Properties для створення методу bossButton_CheckedChanged, події CheckedChanged, що є обробником. Додайте в метод bossButton_CheckedChanged наступні оператори:

positionRole.Items.Clear();

positionRole.Enabled = true;

positionRole.Items.Add("General Manager");

positionRole.Items.Add("Project Manager");

Це ті посади, які можен займати менеджер.

41.Перемкніться на EmployeeForm.aspx у вікні Design View і створіть обробник події CheckedChanged для радіо-кнопки vpButton (віце-президент). Додайте наступних операторів в цей метод:

positionRole.Items.Clear();

positionRole.Enabled = true;

positionRole.Items.Add("VP Sales");

positionRole.Items.Add("VP Marketing");

positionRole.Items.Add("VP Production");

positionRole.Items.Add("VP Human Resources");

42.Створіть завершальний обробник події CheckedChanged для радіо-кнопки President. Додайте наступний код в цей обробник:

positionRole.Items.Clear();

positionRole.Enabled = false;

Для президента компанії немає інших ролей, тому список радіо-кнопок робиться неактивним.

43.Створіть обробник події Click для кнопки Save. Звичайно цей метод використовується для збереження інформації в базі даних, але, щоб зробити це застосування простішим, цей метод буде просто відображати деякі введені дані в мітці InfoLabel. Додайте наступних операторів в метод saveButton_Click:

string position = "";

if (workerButton.Checked) position = "Worker";

if (bossButton.Checked) position = "Manager";

if (vpButton.Checked)

position = "Vice President"; if (presidentButton.Checked)

position = "President";

infoLabel.Text = "Employee:&nbsp" + firstName.Text + "&nbsp" + lastName.Text + "&nbsp&nbsp&nbsp&nbspId&nbsp" + employeeID.Text + "&nbsp&nbsp&nbsp&nbspPosition&nbsp" +

position;

131

Символ &nbsp це перазрывный пропуск в HTML; звичайні пробільні символи полсе першого пропуску ігноруються браузером.

44. Створіть обробник події Click для кнопки Clear. Додайте наступних операторів в цей метод:

firstName.Text = "";

lastName.Text = "";

employeeID.Text = "";

workerButton.Checked = true;

initPositionRole();

infoLabel.Text = "";

Цей код очищає інформації, введену користувачем, і включає радіо-кнопку за умовчанням для ролей (Worker).

Нове тестування форми

45.Запустіть ваше застосування. Введіть прізвище службовця і його номер ID. Розкрійте випадний список ролей. З'явиться список ролей для робочого.

46.Змініть позицію в списку службовців на Vice President і знову розкрійте список ролей.

Ви відмітите, що список ролей не змінився, він як і раніше відображає ролі для робочого. Це трапилося через те, що обробник події CheckedChanged для кнопки Vice President не спрацював.

47.Закрийте Internet Explorer і знову перейдіть в програмне середовище Visual Studio 2005.

48.Відкрийте EmployeeForm.aspx у вікні Design View і виділите радіо-кнопку worker-Button. У вікні Properties встановите властивість AutoPostBack в True.

Коли користувач клацне цю радіо-кнопку, форма буде послана на сервер для обробки, спрацює обробник події CheckedChanged, і форма може бути модифікована, і відображатиме ролі для цієї радіо-кнопки. За умовчанням властивість AutoPostBack встановлена в False, щоб уникнути непотрібного мережевого трафіку.

Встановіть властивість AutoPostBack в True і для інших радіо-кнопок: bossButton, vpButton, і presidentButton.

49.Знов запустите ваше застосування.

Цього разу ви побачите, що при виборі радіо-кнопки відбувається слабке мерехтіння, поки форма відсилається на сервер, і сервер повертає її назад, обробивши подію

CheckedChanged.

50.У меню View Internet Explorer клацніть Source для відображення початкового коду HTML цієї сторінки.

Запуститься Notepad для відображення коду сторінки. Ви там не побачите фрагментів “asp:” і коду на мові C#. Серверні елементи управління (Server controls) були конвертовані в еквівалентні елементи HTML (з невеликим додаванням JavaScript). Це одна з основних властивостей серверних елементів управління – ви звертаєтеся до ним програмно як до звичайних об'єктів .NET Framework через методи, властивості і події. А коли вони будуть передані на Web сервер, вони конвертуються в HTML, надаючи вам можливість використовувати будь-які HTML браузеры для відображення форм ASP.NET під час роботи застосування.

Після закінчення вивчення файлу закрийте Notepad.

132

51.Клацніть кнопку Save.

Елемент InfoLabel відобразить інформацію про нового службовця.

52.Клацніть кнопку Clear. Відбудеться очищення форми.

Короткі теоретичні відомості.

Застосування ASP.NET

ASP.NET – це спосіб, передбачений .NET для створення динамічних web-сайтів. Як і ADO.NET, ASP.NET запозичує свою назву від попередньої технології Active Server Pages (ASP – активні серверні сторінки), але в даному випадку схожість цим практично і обмежується. Тоді як ASPсторінки інтерпретувалися і створювалися на функціонально обмежених мовах опису сценаріїв VBScript і JScript, застосування ASP.NET компілюються на мову MSIL точно так, як і інші застосування .NET. Це означає, що у вас з'являється можливість описувати їх на тих же мовах програмування, що і решта застосувань .NET, наприклад на C#.

Іншою величезною перевагою ASP.NET є використання елементів, що управляють, на стороні сервера. У ASP також була можливість елементи HTML (такі як кнопки і інші елементи форм), що управляють, в створювані сторінки, проте робити це доводилося уручну, а реагувати на будь-яке введення користувача в такі елементи можна було або за допомогою виконання сценарію JavaScript на клієнтській стороні, або повторно відправляючи сторінку серверу. У першому випадку проблема полягала в тому, що в різних браузерах використовуються різні реалізації JavaScript, тому практично не представляється можливим створювати такі витончені програми, які могли б працювати як на Netscape, так і на IE.

ASP.NET дозволяє вирішити ці проблеми за рахунок використання елементів, що управляють, на стороні сервера. Такі елементи генерують HTML-код, який передається браузеру для виведення елементу, що управляє, але вони, крім того, генерують ще і функції на JavaScript і прихованих елементах, що управляють, в яких зберігається їх поточний стан. Якщо сторінка передається серверу, то разом з нею серверу передається і вся відповідна інформація; елемент, що управляє, автоматично обробляє цю інформацію і змінює HTML так, щоб вивести елемент, що управляє, на екран.

Останнє, і, можливо, найбільш важлива поважна перевага полягає в тому, що ASP.NET надає простий спосіб створення web-служб.

133

ЛІТЕРАТУРА

1.Робинсон С., Корнес О. и др. C# для профессионалов. В 2-х томах. – М.: Лори, 2003

2.Ватсон К. и др. C#. М.: Лори, 2004

3.Microsoft Corporation. Разработка Windows-приложений на Visual Basic .NET и Visual C#

.NET. Учебный курс MCAD/MCSD. – Пер. с англ. – М.: Русская редакция, 2003

4.Байдачный С.С. .NET Framework. Секреты создания Windows-приложений – М.: СОЛОНПресс, 2004

5.Дубовцев А.В. Microsoft .NET в подлиннике. – СПб.: БХВ-Петербург, 2004

6.Либерти Д. Программирование на C# . – М.: Символ-Плюс, 2003

7.Троельсен Э. C# и платформа .NET. Библиотека программиста. – СПб.: Питер, 2005

8.Шилдт Г. C#: учебный курс – СПб.: Питер, 2002

9.Шилдт Г. Полный справочник по C#. – М.: Вильямс, 2004

10.Рихтер Дж. Программирование на платформе Microsoft .NET. – М.: Русская редакция, 2003

11.Микельсен Язык программирования C#. Лекции и упражнения – К.: ДиаСофт, 2002

12.Петцольд Ч. Программирование для Microsoft Windows на C#. В 2-х томах. – М.: Русская редакция, 2002

13.Петцольд Ч. Программирование в тональности C#. – М.: Русская редакция, 2004

14.Использование C#. Специальное издание. – М.: Вильямс, 2002

15.Пономарев В. Программирование на C++/C# Visual Studio.NET 2003. – M.: BHV, 2004

16.Секунов Н. Самоучитель C#. – М.: BHV, 2003

17.Фролов А., Фролов Г. Язык C#. Самоучитель. – М.: Диалог-МИФИ, 2002

18.Арчер Т. Основы C#. Новейшие технологии. – М.: Русская редакция, 2001

19.Майо Дж. C#. Искусство программирования. – К.: ДиаСофт, 2002

20.Тай Т., Лэм Х. К. Платформа .NET. Основы. – Пер. с англ. – СПб: Символ-Плюс, 2003

21.Sharp J. Microsoft Visual C# 2005 Step by Step. – Microsoft Press, 2006

22.Pro C# 2005 and the .NET 2.0 Platform, Third Edition by Andrew Troelsen Publisher: Apress; 3rd edition (September 12, 2005)

23.C# 2.0 : Practical Guide for Programmers (The Practical Guides) by Michel de Champlain, Brian G. Patrick Publisher: Morgan Kaufmann (February 22, 2005)

24.Professional .NET 2.0 Generics (Programmer to Programmer) by Tod Golding Publisher: WROX (October 21, 2005)

25.C# 2005 For Dummies (For Dummies (Computer/Tech)) by Stephen Randy Davis, Charles Sphar Publisher: For Dummies; Bk&CD-Rom edition (October 28, 2005)

26.Core C# and .NET (Core) (Paperback) by Stephen C. Perry Publisher: Prentice Hall PTR (September 6, 2005)

27.Материал из Википедии — свободной энциклопедии. http://ru.wikipedia.org/wiki/C_Sharp

28.C# Course examples from Long Island University – http://phoenix.liu.edu/~mdevi/

29.Програмиране за .NET Framework //Светлин Наков и коллектив. –София: "Фабер", 2005

30.Основы программирования на C#. Интернет-Университет Информационных Технологий http://www.INTUIT.ru

134