Курсовая работа на тему: «Windows Presentation Foundation»


Скачать 369.89 Kb.
НазваниеКурсовая работа на тему: «Windows Presentation Foundation»
страница4/5
Куничник Д С
Дата05.11.2012
Размер369.89 Kb.
ТипКурсовая
1   2   3   4   5

2.3 Создание базы данных и подключение к ней


Для работы с базой данных мы будем использовать Microsoft SQL Server. Так, как сайт находится на локальной машине, выберем Database File. В качестве имени используем MYDATABASE.MDF. (Рис.11)


Рис.11

При помощи встроенного в IDE редактора баз данных создадим простую таблицу groupmates и наполним начальными данными. Столбцам year и phone разрешим оставаться пустыми (Allow Nulls). (Рис.12)


Рис.12

Теперь из окна DataBase Explorer перетаскиваем таблицу groupmates на зону MainZone. (Рис.13) Visual Web Developer автоматически создаст объект SqlDataSource, сгенерирует нужную строку подключения и строку команд. Он также автоматически создаст экземпляр компонента GridView и привяжет его к SqlDataSource. Но в версии без SP1 есть баг, который заключается в неправильном привязывании GridView к SqlDataSource. Чтобы заставить приложение работать, нужно вырезать отвечающую за SqlDataSource часть кода и вставить её в конец страницы.


Рис.13

Для реализации возможности добавления, изменения и удаления данных в среднюю зону добавим компонент ListView. Для автоматической настройки компонента, нажмем Configure Data Source. Нажимаем Next и в уже знакомом нам окне находим кнопку Advanced, поставим галочку у первого поля выбора. (Рис.14)


Рис.14

В левую зону вставляем объект PageCatalogPart. Для каждой из зон делаем автоформатирование. Для этого нужно выбрать зону и справа от неё появится так называемый умный тэг. (Рис.15)


Рис.15

Теперь наша страница уже начинает напоминать www.msn.com (Рис.16). Добавим ещё одну строку таблицы в конце, она будет играть роль footer’а и содержать лишь одну ячейку. Кроме того, в левую нижнюю ячейку нужно вставить объект EditorZone, который дает ещё большую гибкость настройки. Последнее, что стоит сделать – это добавить компонент Menu во вторую ячейку первой строки таблицы и добавить обработчик OnMenuItemClick="PartsMenu_MenuItemClick".


Рис.16


2.4 Кодовая реализация


Начнем с реализации конвертера. Для этого в правую зону напишем следующий код:


Теперь перейдем непосредственно к реализации алгоритма конвертации валют. Для этого два раза кликаем на кнопку Button1 и Visual Web Developer направит нас на метод-обработчик события Button_Click1. Внутри него мы пишем следующий код:


Так как пользователь может ввести практически любые данные в текстовое поле, я использовал конструкцию try...catch. В случае каких-либо ошибок (например, ввода букв или слишком большого числа) метод выведет ошибку в окне, но не остановит работу приложения.

Курсы валют я записал непосредственно в список опций компонента DropDownList. Это значит, что к ним можно обратиться просто использовав свойство Value, которое возвращает текстовые данные. Но нам нужно перемножить числа. Поэтому была использована функция Parse класса Decimal

Созданное нами в верхней правой ячейке таблицы меню является пустым. Нам нужно наполнить его имеющимися опциями выбора отображения содержимого Web-зон. Для этого добавим следующий код в обработчик события Page_Load:


Мы проверяем, первый ли раз была запрошена эта страница при помощи свойства IsPostBack. Иначе при каждом обновлении страницы пункты меню добавлялись бы снова и снова.

Также отображение в стиле «Connect» не будет работать на локальной машине, поэтому на этапе создания опций выбора мы исключили его из списка. В качестве отображения по-умолчанию был выбран тип «Edit». Он дает возможность увидеть все возможности сайта.

В созданный ранее обработчик событий PartsMenu_MenuItemClick добавим следующий код:


Чтобы названия каждой части сайта соответствовали содержанию, а не несло пустые названия вроде Untitled[x], в Page_Load также стоит дописать:


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


Атрибут runat=”server” прверащает ячейку в HTML server control, а атрибут ID=”Header” дает ей имя. Это позволит работать с сайтом в привычной объектно-ориентированной среде.

Теперь, чтобы реализовать динамическую загрузку мы снова добавим код в обработчик события Page_Load:


В переменную типа String мы записываем физический путь сайта, который можно получить, использовав метод MapPath объекта Page. Далее при помощи потока мы открываем имеющийся файл и записываем все его содержимое в контейнер Header,- верхнюю левую ячейку страницы.


1   2   3   4   5

Похожие:

Разместите кнопку на своём сайте:
cat.convdocs.org


База данных защищена авторским правом ©cat.convdocs.org 2012
обратиться к администрации
cat.convdocs.org
Главная страница