Навигация по сайту

Microsoft.NET Framework как платформа для создания, развертывания и запуска Web-сервисов и приложений. Введение в аsp.net и управления SiteMapPath. Программное управление TreeView, шаблоны дизайна страниц asp.net. Программное назначение главной страницы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 30.03.2015
Размер файла 97,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

СОДЕРЖАНИЕ

1. ВВЕДЕНИЕ В ASP.NET

2. НАВИГАЦИЯ ПО САЙТУ

2.1 Site Map

2.2 Элемент управления SiteMapPath

2.3 SiteMapDataSource

2.4 TreeView

2.5 Программное управление TreeView

2.6 Элемент управления Menu

3. ШАБЛОНЫ ДИЗАЙНА СТРАНИЦ ASP .NET

3.1 Основы Master Pages

3.2 Содержание по умолчанию

3.3 Программное назначение главной страницы

3.4 Вложенные мастер-страницы

3.5 Последовательность событий

СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ

1. ВВЕДЕНИЕ В ASP.NET

Microsoft .NET Framework - это, как известно, платформа для создания, развертывания и запуска Web-сервисов и приложений. Именно Web-приложения, работающие интегрировано друг с другом и удобная коммуникация между, являлись основной целью создания Фреймворка, как сказал мне кто то из Microsoft :)

Сейчас, с выходом .NET 3.0 (WinFX) многое начинает меняться. Но основы все равно остались прежними. ASP.NET - это часть .NET Framework, нужная для написания интернет приложений, работающих обычно на стороне сервера. ASP .NET позволяет создавать нам динамические страницы и целые сайты.

Динамическими принято называть web-страницы, которые перед отправкой клиенту проходят цикл обработки на сервере. В самом простом случае это может быть некоторая программа, которая модифицирует запрашиваемые клиентом статические страницы, используя параметры полученного запроса и некоторое хранилище данных. Даже при такой примитивной организации «неразрешимая» задача из предыдущего абзаца обретает очевидное решение: достаточно подготовить всего одну статическую страницу - шаблон - и перед отправкой страницы программно подставлять в него значение, полученное сегодня из банка или метеобюро.

Большинство страниц на ранних стадиях развития интернета были статическими. Последние 10 лет растет количество динамических страниц. И это понятно, пользователи интернет хотят не только читать готовую информацию, а быть активными действующими лицами. Например, они заказывают товары в интернет-магазине, пишут дневники, участвуют в конкурсах. Информационные порталы обновляют новости каждую минуту. Динамические страницы могут подстраиваться под конкретного пользователя, а также реагировать на его действия в браузере. Каким же образом? Для этого придумано множество технологий. Например, того, чтобы идентифицировать пользователя и сохранить его настройки для данного сайта, применяются файлы-cookies.

Существуют языки, способные динамически изменять содержимое веб-страницы. С одной стороны, это языки скриптов, выполняющиеся непосредственно у клиента. Примеры скриптовых языков - JavaScript и VBScript. Скрипты на этих языках встроены в код HTML, который сервер посылает браузеру. Сценарии, выполняемые на стороне клиента, выделяются тегами <SCRIPT> и </SCRIPT>. Браузер интерпретирует этот код и показывает пользователю результат. Сам код можно просмотреть через View Source браузера. Естественно, эти программы не могут быть большими. Например, если нужно выполнить поиск в базе данных, мы не может отправить пользователю все ее содержимое. Но скрипты могут проверить правильность запроса, введенного в форму, тогда не придется перезагружать сервер обработкой неправильных запросов. Некоторые программисты создают на JavaScript анимационные эффекты. Одна студентка intuit.ru желала найти скрипт, который бы отправлял SMS-сообщения. Увы, это невозможно. Выполняемых на стороне клиента сценариев недостаточно для создания полноценных динамических страниц. Даже если на странице используется JavaScript, анимированные картинки .gif, она называется статической.

Динамическая веб-странице должна быть создана «на лету» программой, исполняющейся на интернет-сервере. Широко применяются механизм шлюзов CGI(Common Gateway Interface). Вначале пользователь получает статическую страницу с формой. Вам известно, что в теге FORM существует атрибут ACTION. Именно он задает адрес (URL) исполняемого приложения. На сервере находятся исполняемые файлы программ, написанных, например на C/С++ или Дельфи, которые по протоколу HTTP принимают данные из входного потока или из переменных окружения и записывают в стандартный выходной поток готовую страницу.

Пользователю в ответ на запрос посылается HTML код, который был специально сгенерирован для него. Это может быть, например, результат поиска в поисковой системе. CGI -скрипты могут быть написаны на интерпретируемом языке (Perl) или даже скрипте командной строки. Входной и выходной потоки переназначаются. На вход интернет-сервер принимает данные, введенные пользователем. После обработки полученных данных, пользователю возвращается результирующая страница. При исполнении cgi-программа загружается в память сервера, а при завершении - удаляется. Когда 100 клиентов одновременно обращаются к серверу, в памяти создаются 100 процессов, для размещения кода каждого из которых нужна память. Это отрицательно сказывается на масштабируемости. Напомним, что масштабируемость - это возможность плавного роста времени ответа программной системы на запрос с ростом числа одновременно работающих пользователей.

Для решения этой проблемы Microsoft была предложена альтернатива - ISAPI (Internet Server Application Programming Interface)-расширения и фильтры. Вместо исполняемых файлов используются DLL - библиотеки. Код DLL находится в памяти все время и для каждого запроса создает не процессы, а нити исполнения. Все нити используют один и тот же программный код. ISAPI -приложение выполняется в процессе IIS-сервера. Это позволяет повысить производительность и масштабируемость. ISAPI-расширения можно создавать в Visual Studio C++ 6.0, пользуясь мастером.

У ISAPI тоже есть недостатки, относящиеся к разработке. Если мы меняем исходный код dll, мы должны его откомпилировать и поместить в исполняемую директорию сервера. Но так как предыдущий вариант dll находится в памяти, необходимо остановить сервер, чтобы получить доступ на изменение файла. В это время клиенты не смогут получить в сервера ни один документ, и, конечно, будут не удовлетворены.

Скриптовые языки, исполняющиеся на стороне сервера - php и asp. Технология asp была разработана Microsoft в 90-х годах.

Выполнение кода asp поддерживается ISAPI-расширением сервера. В диалоге конфигурации сервера IIS определяются способы обработки файлов с различными расширениями. Для обработки URL-адреса с расширением в установках сервера определен файл asp.dll. Файлы asp отправляются к нему на обработку. На вход поступает asp, а на выходе имеем поток HTML-кода.

Пример файла asp:[img]images\News\ASPNet01-1.jpg[/img]. Тег <%...%> сигнализирует asp, что в нем находится код, который он должен обрабатывать на сервере. Выполняется скрипт на языке, который указан в директиве Language. Оператор Response.Write записывает текст в выходной поток сервера, таким образом, он становится частью HTML-страницы, отправленной пользователю.

Технология asp была ограничена по своим возможностям. Он использовал скриптовые языки, которые имеют меньше возможностей, чем полнофункциональные языки программирования. Код asp был встроен в HTML в виде специальных тегов, что создавало путаницу. Кусочки asp были разбросаны по нему, как изюм в булке. Но HTML код обычно создают дизайнеры, которые умеют «делать красиво», а asp - программисты, которые заставляют все это работать. В ASP.NET вы можете держать код asp и HTML в разных файлах. платформа программный web дизайн

Скриптовые языки не поддерживают строгую типизацию. Что это значит? Вы можете не описывать переменную до ее использования и можете присваивать ей значения разных типов. Это удобно, но создает почву для ошибок. Например, у вас есть переменная x1, и вы присваиваете ей значение 1, но вы сделали опечатку и по ошибке написали x2=1. Будет создана новая переменная x2, а значение x1 не изменится. В языке со строгой типизацией компилятор заметит, что переменная x2 не описывалась, и выдаст ошибку.

В 2000 году на конференции разработчиков в качестве части новой технологии .NET Microsoft представила ASP+. С выходом .NET Framework 1.0 она стала называться ASP.NET.

ASP.NET - это не продолжение ASP. Это концептуально новая технология Microsoft, созданная в рамках идеологии .NET. В ASP.NET заложено все, для того, чтобы сделать весь цикл разработки веб-приложения более быстрым, а поддержку более простой. ASP.NET основана на объектно-ориентированной технологии, но сохранила модель разработки asp: вы создаете программу и помещаете ее в директорию, выделенную сервером, и она будет работать. В ASP.NET появилось много новых функций, а существовавшие в asp значительно усовершенствованы.

В ASP.NET используются компилируемые языки. Во время компиляции проверяется синтаксическая корректность исходного текста. Скомпилированный в промежуточный язык код выполняется быстрее, и он будет таким же независимо от языка, который мы используем. Компилируемые языки поддерживают строгую типизацию.

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

Платформа .NET Framework предоставляет приложениям среду выполнения, сама непосредственно взаимодействуя с операционной системой. Выше лежит интерфейс ASP.NET приложений, на котором в свою очередь базируются веб-формы (ASP.NET страницы) и веб-сервисы. Интерфейс .NET Framework позволяет стандартизировать обращение к системным вызовам и предоставляет среду для более быстрой и удобной разработки. CLR обеспечивает единый набор сервисов для всех языков.

ASP.NET использует технологию доступа к данным ADO.NET, которая обеспечивает единый интерфейс для доступа к базам данных SQL Server и файлам XML. Кроме того, усиленная модель безопасности позволяет обеспечивать защиту клиента и сервера от несанкционированного доступа.

В 2004 году появилась версия ASP.NET 2.0(бета-версия, окончательный выход - конец 2005-начало 2006). Как утверждается, эта версия позволяет сократить объем кодирования на 70%. Новые возможности версии 2.0 - например, использование шаблонов дизайна страниц (Master Page), упрощенная локализация Web-приложений, более 50 новых серверных элементов управления . Цели, которые преследовали разработчики новой версии - повысить скорость разработки сайтов, масштабируемость, легкость поддержки и администрирования сайтов, скорость работы сервера. Появилась панель остнастки MMC (консоль управления Microsoft), предоставляющая графический интерфейс для управления настройками ASP.NET. Изменять настройки проекта теперь можно и через web-интерфейс. ASP.NET 2.0 поддерживает работу на 64-битных процессорах. Сервис персонализации (personalization) предоставляет готовое решение для хранения персональных данных, непосредственно характеризующих пользователя сайта, так называемого профиля пользователя (Profile).

Шаблоны дизайна, темы и скины позволяют независимо дизайн всего сайта отдельно от его функциональности, темы включают графику и каскадные таблицы стилей.

Предыдущие версии Visual Studio для проектов ASP.NET требовали наличия на машине разработчика сервера IIS. Теперь сервер встроен в среду разработки.

ASP.NET 2.0 и Visual Studio 2005 предоставляют инструменты для легкого построения локализируемых сайтов, которые определяют предпочитаемый язык пользователя и посылают ему страницы на его языке.

Возможность прекомпиляции позволяет обнаружить ошибки до загрузки страниц на сервер. Можно не хранить на сервере исходные страницы aspx, тем самым защищая свою интеллектуальную собственность.

В ASP.NET 2.0 встроена технология автоматического обновления кэширования баз данных. Данные, полученные из базы, хранятся на сервере и он не обращается к базе для обработки повторного запроса. При изменении базы данных кэш обновляет свое содержимое.

ASP.NET - это технология, а не язык, и позволяет программировать на разных языках - С#, Visual Basic, J#. В платформе .NET все языки равны, но некоторые равнее(Дж. Оруэлл). Вот таким языком и является С#, потому что он был специально создан для этой платформы. Программирование C# позволяет в полной мере использовать концепции, методы и паттерны объектно-ориентированной разработки. Язык Visual Basic 8.0 наделен почти теми же возможностями. Чтобы научиться ASP.NET, вам нужно знать основы HTML, а знание asp не обязательно. Оно может даже помешать, так как придется менять образ мышления. Также для понимания многих желательно знать CSS и JavaScript.

2. НАВИГАЦИЯ ПО САЙТУ

Веб-приложения, которые обычно создаются для работы в Интернет, состоят из большого количества взаимосвязанных страниц. Переход с одной страницы на другую происходит по гиперссылкам. На многих сайтах создаются различные средства для путешествий по страницам. Панели навигации располагаются в верхней части страницы в виде полосы, справа или слева в виде древовидной структуры.

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

2.1 Site Map

Структура навигации должна быть описана в карте сайта. Она находится в файле .sitemap формата XML, который можно создать в диалоге New File, выбрав пункт Site Map. Имя этого файла умолчанию - web.sitemap. Карта сайта служит источником информации для всех элементов управления группы Navigation. С ней можно работать программно с помощью класса SiteMap или через элемент управления-источник данных SiteMapDataSource.

Узлы siteMapNode могут вкладываться друг в друга, создавая иерархию. Логика вложенности узлов никак не связана с физическим расположением файлов. Каждый атрибут url в файле .sitemap должен быть уникальным. Схема формата .sitemap

<?xml version="1.0" encoding="utf-8" ?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"

elementFormDefault="qualified">

<xs:element name="siteMap">

<xs:complexType>

<xs:sequence>

<xs:element ref="siteMapNode" maxOccurs="unbounded" />

</xs:sequence>

</xs:complexType>

</xs:element>

<xs:element name="siteMapNode">

<xs:complexType>

<xs:sequence>

<xs:element ref="siteMapNode" minOccurs="0" maxOccurs="unbounded"/>

</xs:sequence>

<xs:attribute name="url" type="xs:string" />

<xs:attribute name="title" type="xs:string" />

<xs:attribute name="description" type="xs:string" />

<xs:attribute name="keywords" type="xs:string" />

<xs:attribute name="roles" type="xs:string" />

<xs:attribute name="siteMapFile" type="xs:string" />

<xs:attribute name="Provider" type="xs:string" />

</xs:complexType>

</xs:element>

</xs:schema>

Чтобы сделать карту сайта доступной для элементов управления, используется провайдер типа XmlSiteMapProvider. Можно разработать собственный провайдер. Редактирование карты сайта в Visual Studio 2005 облегчается с помощью технологии IntelliSense.

Атрибут title узла карты сайта создает текстовое описание страницы. Он используется как текст гиперссылки, создаваемой в TreeView или Menu. Атрибут description задает текст подсказки(Tooltip), связанной с этой гиперссылкой. Атрибут url описывает путь к странице внутри веб-сайта. При этом для страниц в корневой директории достаточно указать их название. Если страница находится в поддиректории, путь указывается с помощью прямого слеша.

<?xml version="1.0" encoding="utf-8" ?>

<siteMap>

<siteMapNode title="Home" url="Default.aspx">

<siteMapNode title="Resume" url="Resume.aspx" />

<siteMapNode title="Links" url="Links.aspx" />

<siteMapNode title="Albums" url="Albums.aspx" >

<siteMapNode title="Photos" url="Photos.aspx" >

<siteMapNode title="Details" url="Details.aspx" />

</siteMapNode>

</siteMapNode>

<siteMapNode title="Register" url="Register.aspx" />

<siteMapNode title="Manage" url="Admin/Albums.aspx" >

<siteMapNode title="Photos" url="Admin/Photos.aspx" >

<siteMapNode title="Details" url="Admin/Details.aspx" />

</siteMapNode>

</siteMapNode>

</siteMapNode>

</siteMap>

Элементы управления для навигации по сайту - Treeview, Menu, SiteMenuPath. Некоторые элементы навигации могут работать с картой напрямую, например, SiteMenuPath, но Menu и Treeview могут показывать карту сайта, только получая данные из SiteMapDataSource.

2.2 Элемент управления SiteMapPath

Подобную панель, которая показывает путь от главной страницы к текущей, часто называют breadcrumb (хлебные крошки). MSDN Home > ASP.NET Developer Center > Reference > Using ASP.NET Controls

Вероятно, это связано со сказкой о Мальчике-с-Пальчик, который бросал хлебные крошки по пути в лес, чтобы найти путь домой. Пользователь большого и сложного веб-узла тоже должен знать, где он находится, и не потеряться в лабиринте. Поэтому можно назвать этот элемент еще и нитью Ариадны. Он состоит из последовательности гиперссылок на все вышестоящие узлы сайта. Текущая страница отображена простым текстом. Эту настройку можно изменить, установив свойство RenderCurrentNodeAsLink в True.

Для того, чтобы на странице работал этот элемент, даже не нужно источника данных. Он автоматически читает карту сайта из файла Web.sitemap. Достаточно просто перетащить его на страницу. Имеются 4 свойства стиля, каждый из которых задается отдельно: для корневого элемента, для разделителя, обычного узла и текущего узла. У SiteMapPath имеется такая же возможность автоформатирования, как и у многих других элементов управления.

Свойство PathDirection позволяет изменить направление от корня к текущей странице на обратное. Например, если у вас был таким: Главная : Игра : Таблица, то после изменения значения PathDirection на CurrentToRoot станет таким: Таблица : Игра : Главная

Текстовый атрибут PathSeparator задает разделитель между узлами. Например, в первом примере это “ > ”, который ставится по умолчанию, а во втором “ : ”. Пробелы здесь существенны. Похожие атрибуты был и в календаре - к примеру NextMonthText. Для того, чтобы задать изображения, в качестве разделителя, можно использовать шаблон PathSeparatorTemplate.

<asp:SiteMapPath ID="SiteMapPath1" runat="server">

<PathSeparatorTemplate>

<asp:Image ID="Image1" runat="server" ImageUrl="img/folder.gif" />

</PathSeparatorTemplate>

</asp:SiteMapPath>

Свойство ParentLevelsDisplayed позволяет ограничить количество отображаемых родительских узлов. Если оно равно -1(по умолчанию), то показываются все узлы.

Если подержать курсор мыши над элементом, появится подсказка, текст которой берется из атрибута description соответствующего узла карты сайта. Отключить отображение подсказки можно с помощью свойства ShowToolTips="false".

Всего имеется 4 шаблона: PathSeparatorTemplate, NodeTemplate, RootTemplate и CurrentNodeTemplate, с помощью которых можно вставлять любые элементы управления в различные части SiteMapPath. Для каждой из частей можно определить и собственный стиль.

2.3 SiteMapDataSource

Источник данных SiteMapDataSource работает с помощью провайдера SiteMapProvider. Этот источник данных не поддерживает кеширование, как другие. Он может быть связан только с файлом карты сайта.

В простейшем виде объявляется так:

<asp:SiteMapDataSource ID=”SiteMapDataSource1” Runat=”server” />

Свойство ShowStartingNode определяет, будет ли элемент читать корневой узел карты сайта. Если не установлено, то в коллекцию узлов попадут только дочерние элементы корневого узла.

StartFromCurrentNode =False задает возможность читать только узлы, начиная с текущей страницы.

Свойство FlatDepth задает количество уровней вложенности, которое читается из карты сайта. По умолчанию это -1, то есть читаются все доступные уровни.

SiteMapProvider может быть полезным при написании собственных провайдеров карты сайта.

SiteMapViewType определяет форму представления узлов. По умолчанию это Tree. Если значение равно Path, то будет читаться путь между корневым узлом и текущим, как в элементе управления SiteMapPath.

2.4 TreeView

Элемент TreeView создан специально для показа иерархической информации. Он может черпать информацию как из любого XML-файла через XmlDataSource, так и из карты сайта посредством SiteMapDataSource. Как следует из его названия, TreeView показывает данные в виде дерева, причем его узлы можно раскрывать и закрывать, выбирать отдельные «листья». При этом будут запускаться события, которые можно обработать.

TreeView состоит из узлов, которые соединены между собой отношениями «родитель-потомок». У одного родителя может быть один или несколько потомков. Узлы, у которых нет родителя, называются корневыми. Их в элементе управления может быть несколько. Узлы, у которых нет потомков, называются листьями.

При декларации TreeView на странице узлы описываются тегами TreeNode. Допускается любой уровень вложенности узлов друг в друга. Узлы элемента управления можно редактировать визуально

<asp:TreeView ID="TreeLibrary" runat="server" ImageSet="WindowsHelp" >

<Nodes>

<asp:TreeNode Text="Категории книг" Value="Book Categories">

<asp:TreeNode Text="Художественная литература" Value="literature">

<asp:TreeNode Text="Русская классика" Value="Russian Classics" NavigateUrl="~/libru.aspx?id=1">

<asp:TreeNode Text="Пушкин" Value="Pushkin" NavigateUrl="~/libru.aspx?id=1&auth=10">

</asp:TreeNode>

</asp:TreeNode>

</asp:TreeNode>

<asp:TreeNode Text="Компьютерная литература" Value="Computers">

<asp:TreeNode Text="Web Development" Value=" Web Development" NavigateUrl="~/example1.aspx?id=1">

<asp:TreeNode Text="JavaScript" Value=" JavaScript " NavigateUrl="~/example1.aspx?id=2">

</asp:TreeNode>

<asp:TreeNode Text="ASP.NET" Value="ASP.NET" NavigateUrl="~/example1.aspx?id=3"></asp:TreeNode>

</asp:TreeNode>

</asp:TreeNode>

</asp:TreeNode>

</Nodes>

</asp:TreeView>

Если нужно программно добавлять дочерние узлы, свойство PopulateOnDemand нужно установить в true.

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

ShowLines="True"

Внешний вид линий можно отредактировать, при этом с помощью средства TreeView Line Generator будут созданы изображения для всех ее фрагментов.

Вместо текста в узлах можно показывать изображения, заданные свойством ImageUrl.

Свойство ImageSet имеет набор предопределенных значков для разных типов узлов. Например, MSDN придаст вашему дереву сходство с TreeView на сайте msdn.com, а XPFileExplorer с программой Explorer в Windows XP.

В качестве изображения для узлов можно задать любые картинки.

CollapseImageUrl=”Images/CollapseImage.gif”

ExpandImageUrl=”Images/ExpandImage.gif”

LeafImageUrl=”Images/LeafImage.gif”

Если источником данных служит XmlDataSource, то его узлы можно привязать к элементу TreeView. Создайте на странице Treeview. У него есть «умный ярлык», который позволит настроить источник данных. Настройка происходит так же, как и у элемента управления Xml.

После этого нужно настроить способы показа данных. По умолчанию он будет показывать названия узлов, а не их внутреннее содержание. В SmartTag выберите пункт Edit TreeNode Databindings. В результате в редакторе должен появиться примерно такой текст.

<asp:XmlDataSource ID="XmlDataSource1" runat="server"

DataFile="~/FilmChoices.xml"

XPath="FilmChoices/Film"></asp:XmlDataSource>

<asp:TreeView ID="TreeView1" runat="server"

DataSourceID="XmlDataSource1" Width="405px">

<DataBindings>

<asp:TreeNodeBinding DataMember="Film" TextField="Title" />

<asp:TreeNodeBinding DataMember="Year" FormatString="Год {0}" TextField="#InnerText" />

<asp:TreeNodeBinding DataMember="Director" FormatString="Режиссер {0}" TextField="#InnerText" />

</DataBindings>

</asp:TreeView>

Значение TextField используется, если нужно показать значения атрибутов узла в исходном XML-файле, а #InnerText указывает текст между открывающими и закрывающими теками узла.

Если выбираем источником данных SiteMap, то на странице создается еще один элемент управления SiteMapDataSource.

<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" />

<asp:TreeView ID="TreeView1" runat="server" DataSourceID="SiteMapDataSource1"

ShowLines="True" BackColor="WhiteSmoke" BorderStyle="Outset"

ImageSet="BulletedList" Font-Names="Verdana" Font-Overline="False"

ForeColor="#804040" Width="199px" >

</asp:TreeView>

На странице элемент TreeView будет выглядеть так:

Содержательная часть этого меню находится в файле карты сайта, а форматирование производится в свойствах TreeView. Свойство AutoGenerateDataBindings позволяет автоматически заполнять узлы информацией из карты сайта.

2.5 Программное управление TreeView

У TreeView есть множество событий. Событие SelectedNodeChanged запускается, когда пользователь выбирает узел.

protected void TreeLibrary_SelectedNodeChanged(object sender, EventArgs e)

{

Label1.Text = "Вы выбрали категорию " + TreeLibrary.SelectedNode.Text;

}

Можно программно раскрывать и закрывать узлы.

TreeView1.ExpandAll();

TreeView1.CollapseAll();

Событие TreeNodePopulate позволяет динамически заполнять узлы, при этом можно экономить память, если заполнять узлы только по требованию после расрытия родительского узла. Событие TreeNodePopulate вызывается, если действие(например, раскрытие) проведено с узлом, у которого SelectAction настроен на это действие.

В следующем примере заполним значения элемента управления TreeView из базы данных Northwind. Родительские узлы - категории продуктов, которые заполняются данными о продуктах тогда, когда узел необходимо раскрыть.

<asp:TreeView ID="TreeViewCatProd" runat="server" ImageSet="BulletedList3"

OnTreeNodePopulate="TreeViewCatProd_TreeNodePopulate" ForeColor="DarkOliveGreen">

</asp:TreeView>

public partial class Products : System.Web.UI.Page

{

string connectionString = @"Data Source=.SQLEXPRESS;Initial Catalog=Northwind;Integrated Security=True";

protected void Page_Load(object sender, EventArgs e)

{

if (!Page.IsPostBack)

{

BindData();

}

}

Вспомогательная функция устанавливает соединение с базой данных и возвращает SqlDataReader - самый быстрый способ чтения данных.

protected SqlDataReader CreateSqlDataReader(string SelectQuery, string ConnectionString)

{

SqlConnection Connection = new SqlConnection(ConnectionString);

SqlCommand Command = new SqlCommand(SelectQuery, Connection);

try

{

Command.CommandType = CommandType.Text;

Command.Connection.Open();

SqlDataReader reader = Command.ExecuteReader(CommandBehavior.CloseConnection);

return reader;

}

catch

{

Connection.Close();

return null;

}

}

При работе с базами данных важно перехватывать исключения.

protected void BindData()

{

TreeNode parentNode = null;

SqlDataReader reader = CreateSqlDataReader("Select CategoryID,CategoryName from Categories", connectionString);

if (reader!=null)

{

while (reader.Read())

{

parentNode = new TreeNode(reader["CategoryName"].ToString(), reader["CategoryID"].ToString());

parentNode.Collapse();

parentNode.PopulateOnDemand = true;

parentNode.SelectAction = TreeNodeSelectAction.Expand;

TreeViewCatProd.Nodes.Add(parentNode);

}

reader.Close();

}

}

Конструктор TreeNode может вызываться без параметров, но он перегружен. Вариант, который здесь используется, позволяет задать текст узла и значение Value(заполняется значением CategoryID), которое необходимо, чтобы найти в базе продукты этой категории.

При раскрытии узла с категорией будет вызываться обработчик.

protected void TreeViewCatProd_TreeNodePopulate(object sender, TreeNodeEventArgs e)

{

TreeNode node = e.Node;

if (node.PopulateOnDemand)

{

string command = string.Format("Select ProductID, ProductName from Products where CategoryID={0}", node.Value);

SqlDataReader reader = CreateSqlDataReader(command, connectionString);

node.ChildNodes.Clear();

if (reader != null)

{

while (reader.Read())

{

TreeNode childNode = new TreeNode(reader["ProductName"].ToString());

childNode.SelectAction = TreeNodeSelectAction.None;

node.ChildNodes.Add(childNode);

}

node.Expand();

reader.Close();

}

}

}

TreeView позволяет не только показывать информацию, но ставить флажки рядом с узлами. Это полезно, если в нем содержится информация о товарах, при этом пользователь может выбрать некоторые из них. Свойство ShowCheckBoxes допускает 5 значений: None, Root, Parent, Leaf, All.

ShowCheckBoxes="Leaf"

При этом рядом с узлами-листьями появляются флажки. Значение флажков можно прочитать программно.

<asp:XmlDataSource ID="XmlDataSource3" runat="server" DataFile="~/menu.xml"></asp:XmlDataSource>

<asp:TreeView ID="TreeMenu" runat="server" DataSourceID="XmlDataSource3" BackColor="#FFFBD6"

Font-Names="Verdana" Font-Size="0.8em" ForeColor="#990000" Height="78px"

Width="415px" ShowCheckBoxes="Parent" OnTreeNodeCheckChanged="TreeMenu_TreeNodeCheckChanged"

NodeWrap="True" PopulateNodesFromClient="False">

<DataBindings>

<asp:TreeNodeBinding DataMember="name" ValueField="#InnerText" />

<asp:TreeNodeBinding DataMember="price" FormatString="{0} руб."

<TextField="#InnerText" ValueField="#InnerText" />

<asp:TreeNodeBinding DataMember="description" TextField="#InnerText" />

<asp:TreeNodeBinding DataMember="calories" FormatString="{0} калорий" TextField="#InnerText" />

<asp:TreeNodeBinding DataMember="food" TextField="name" />

<asp:TreeNodeBinding DataMember="pizza_menu" Text="Меню Пиццы" Value="Меню Пиццы" />

</DataBindings>

</asp:TreeView>

<asp:Label ID="Label1" runat="server" ></asp:Label>

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

protected void TreeMenu_TreeNodeCheckChanged(object sender, TreeNodeEventArgs e)

{

decimal sumPrices=0.0M;

if (TreeMenu.CheckedNodes.Count > 0)

{

Label1.Text = "";

foreach (TreeNode node in TreeMenu.CheckedNodes)

{

sumPrices += decimal.Parse(node.ChildNodes[0].Value);

}

Label1.Text = sumPrices.ToString() +"<br>";

}

}

Цена записана в первом дочернем поле с индексом 0. При этом обращаться свойство Text было бы неправильно, потому что там находится отформатированный текст, например «306 руб.», который нельзя преобразовать в число.

2.6 Элемент управления Menu

Выпадающее меню можно создать средствами одного только css. Это красивое решение, но требует большого объема кода. Также необходимо предусмотреть возможность просмотра разными браузерами. Большинство разработчиков создают меню с помощью JavaScript. В ASP.NET 2.0 создание выпадающего меню любого уровня вложенности требует всего 2 строчек.

<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" />

<asp:Menu ID="Menu1" runat="server" DataSourceID="SiteMapDataSource1">

Вся остальная работа достается ASP.NET. А ее много, чтобы убедиться в это, посмотрите сгенерированный код в браузере.

Menu идеален для отображения большого количества иерархической информации. Занимая мало места, узлы меню раскрываются при наведении курсора мыши. Стрелка рядом с пунктом меню означает, что в нем есть подменю. Вместо стрелки можно использовать изображение, задав свойство DynamicPopOutImageUrl. Картинки также можно использовать в качестве разделителей между пунктами меню.

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

StaticHoverStyle

DynamicHoverStyle

StaticMenuItemStyle

DynamicMenuItemStyle

StaticMenuStyle

DynamicMenuStyle

StaticSelectedStyle

DynamicSelectedStyle

StaticTemplate

DynamicTemplate

Стили можно поменять «одним махом» с помощью автоформатирования.

Статические пункты отображаются постоянно, а динамические при выборе родительских узлов. Для этого автоматически генерируется код JavaScript.

Свойство StaticDisplayLevels по умолчанию равно 1, то есть показываются только главные пункты меню, а остальные появляются в момент наведения мышки. Если это значение изменить, получим статическое многоуровневое меню. На странице разные меню можно привязать к разным источникам SiteMapDataSource, тогда при одной карте сайте они будут показывать его разные подмножества.

<?xml version="1.0" encoding="utf-8" ?>

<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >

<siteMapNode title="Main" >

<siteMapNode title=" Главная" url="Default.aspx">

<siteMapNode url="courses.aspx" title="Курсы" description="Курсы" />

<siteMapNode url="speciality.aspx" title="Учебные программы" description="" />

<siteMapNode url="shop.aspx" title="Учебники" description="" />

<siteMapNode url="News.aspx" title="Новости" description="" />

<siteMapNode url="Forum.aspx" title="Форум"/>

<siteMapNode url="Help.aspx" title="Помощь"/>

</siteMapNode>

<siteMapNode title="user" url="Default2.aspx">

<siteMapNode url="login.aspx" title="Регистрация" description="" />

<siteMapNode title="//" >

<siteMapNode url="records.aspx" title="Зачетка" description="" />

<siteMapNode url="diploms.aspx" title="Дипломы" description="" />

</siteMapNode>

<siteMapNode title="//" >

<siteMapNode url="user.aspx" title="Настройки" description="" />

<siteMapNode url="cart.aspx" title="Корзина"/>

<siteMapNode url="history.aspx" title="Заказы"/>

<siteMapNode url="account.aspx" title="Личный счет"/>

</siteMapNode>

</siteMapNode>

</siteMapNode>

</siteMap>

Одно из меню должно показывать разделы сайта, второе - возможности пользователя.

<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" ShowStartingNode="False" StartingNodeUrl="~/Default.aspx" />

<asp:Menu ID="Menu1" runat="server" BackColor="#FFFBD6" DataSourceID="SiteMapDataSource1" DynamicHorizontalOffset="2"

Font-Names="Verdana" Font-Size="0.8em" ForeColor="#990000" StaticSubMenuIndent="10px" Orientation="Horizontal">

<StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />

<DynamicHoverStyle BackColor="#990000" ForeColor="White" />

<DynamicMenuStyle BackColor="#FFFBD6" />

<StaticSelectedStyle BackColor="#FFCC66" />

<DynamicSelectedStyle BackColor="#FFCC66" />

<DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />

<StaticHoverStyle BackColor="#990000" ForeColor="White" />

</asp:Menu>

<asp:SiteMapDataSource ID="SiteMapDataSource2" runat="server" ShowStartingNode="False"

StartingNodeUrl="~/Default2.aspx" />

</div>

<asp:Menu ID="Menu2" runat="server" DataSourceID="SiteMapDataSource2"

Orientation="Horizontal" BackColor="#F7F6F3" DynamicHorizontalOffset="2"

Font-Names="Verdana" Font-Size="0.8em" ForeColor="#7C6F57" StaticSubMenuIndent="10px" StaticDisplayLevels="2">

<StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />

<DynamicHoverStyle BackColor="#7C6F57" ForeColor="White" />

<DynamicMenuStyle BackColor="#F7F6F3" />

<StaticSelectedStyle BackColor="#5D7B9D" />

<DynamicSelectedStyle BackColor="#5D7B9D" />

<DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />

<StaticHoverStyle BackColor="#7C6F57" ForeColor="White" />

</asp:Menu>

Пункты меню могут быть описаны на странице, а также добавлены программно.

<asp:Menu ID="Menu3" runat="server"

BackColor="#B5C7DE" DynamicHorizontalOffset="2" Font-Names="Verdana"

Font-Size="0.8em" ForeColor="#284E98" StaticDisplayLevels="3"

StaticSubMenuIndent="30px">

<Items>

<asp:MenuItem Text="Настройки" Value="Настройки" Selectable="false" >

<asp:MenuItem Text="Анкета" Value="Анкета"></asp:MenuItem>

<asp:MenuItem Text="Подписка" Value="Подписка"></asp:MenuItem>

<asp:MenuItem Text="Пароль" Value="Пароль"></asp:MenuItem>

</asp:MenuItem>

</Items>

</asp:Menu>

Когда элемент управления привязан к карте сайта, то пункты меню представляют собой гиперссылки на страницы. Событие MenuItemClick позволяет определить поведение страницы при выборе пунктов меню, когда он заполняется другими способами, например, через XmlDataSource. В параметре MenuEventArgs находится информация и о выбранном пункте, и о родительском узле.

<script runat="server">

protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)

{

Listbox1.Items.Add(e.Item.Parent.Value + " : " + e.Item.Value);

}

</script>

3. ШАБЛОНЫ ДИЗАЙНА СТРАНИЦ ASP .NET

Шаблоны дизайна - это визуальное наследование страниц, впервые появившееся в ASP.NET 2.0. Вы можете создавать основу для любого количества страниц приложения. Шаблоны позволяют легче создавать и поддерживать приложения. Visual Studio 2005 включает поддержку создания и редактирования шаблонов страниц.

Примечание: терминология в этой области не устоялась. В некоторых книгах используют выражение «эталонные страницы». Можно применять термин «главная страница», хотя его можно спутать с Default.aspx.

Зачем нужны шаблоны дизайна страниц?

Для простого пользователя отличие одного сайта от другого - в разнообразном дизайне страниц. Большинство веб-сайтов сегодня имеют узнаваемый дизайн, который достигается использованием одних и тех же элементов в тех же самых местах в разных страницах сайта. Поэтому дизайн страниц является едва ли менее важным, чем общая функциональность.

Например, взгляните на главную страницу сайта газеты «Комсомольская правда». Каждый день там появляются разные статьи, но оформление их остается единым. Это логотип газеты, верхние, правые, левые навигационные панели, рейтинг статей справа, формы для поиска, подписки и входа в почту. Внизу страницы находится юридическая информация.

Некоторые разработчики копируют и вставляют повторяющиеся элементы во всех страницах. Это неэффективно, если нужно изменить одну деталь в этих общих элементах, изменения придется вводить во всех страницах. Можно помещать повторяющиеся куски кода во включаемые файлы с помощью команды HTML include. Но так трудно увидеть окончательный вид страницы в среде разработки. В ASP.NET 1.1 стало возможным создавать пользовательские элементы управления. Можно создать такой элемент с нужным содержанием и помещать его на все страницы. Развитием этой идеи стало создание шаблонов страниц. Это тоже пользовательский элемент управления, только он находится не в странице, а вне ее.

3.1 Основы Master Pages

С помощью шаблонов страниц вы определяете некоторое общее содержание и помещаете ее в страницу с расширением .master. Естественно, таких страниц в приложении может быть несколько. Этой шаблон могут использовать любое количество дочерних страниц, которые как и обычные страницы, имеют расширение aspx.

В страницу шаблона также включают общие заголовки и нижние колонтитулы.

Это единственный тип страниц, где возможно разместить специальные элементы управления ContentPlaceHolder. Они определяют места, в которое дочерние страницы данного мастера могут помещать свое собственное содержание. Когда ASP.NET получает запрос отобразить дочернюю страницу, она сливает ее код с кодом главной страницы, в результате генерируется HTML, в котором не видно никаких «швов».

Когда дочерняя страница редактируется в среде разработки, на вкладке Design видна полная страница вместе с элементами из шаблона, но они показаны серым цветом. Их редактировать нельзя. Можно редактировать то, что находится в элементах Content.

В диалоге Add New Item выберите тип страницы Master Page. Как и обычные страницы, их можно создавать с отделенным кодом или кодом, встроенным в страницу. Это никак не влияет на модель разделения кода дочерних+ страниц. Кроме того, главная и дочерняя страницы могут разрабатываться на разных языках.

Чтобы получить четкое разделение страницы на логические части, используют таблицы. Построим таблицу с 3 строками, где в верхней строке находится заголовок всех страниц, во второй произвольное содержание, она состоит из двух ячеек, в каждой из которых по одному ContentPlaceHolder. В нижнем ряду находится правовая информация. Таблица создается очень просто из меню Layout-Insert Table. Создайте таблицу 2 на 3. После этого объедините ячейки верхней и нижней строк, а в среднюю вставьте ContentPlaceHolder. Создайте содержание заголовка и подвала. Должна получиться подобная страница:

<%@ Master Language="C#" AutoEventWireup="true"

CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

<title>Привет!</title>

</head>

<body>

<form id="form1" runat="server">

<div>

<table>

<tr bgcolor="#6699cc">

<td colspan="2" style="vertical-align: middle;

color: white;

text-align: center;">Школа программирования ASP.NET 2.0

</td>

</tr>

<tr>

<td style="width: 100px" valign="top">

<asp:contentplaceholder id="ContentPlaceHolder1"

runat="server">

</asp:contentplaceholder>

</td>

<td style="width: 100px" valign="top">

<asp:ContentPlaceHolder

ID="ContentPlaceHolder2" runat="server">

</asp:ContentPlaceHolder>

</td>

</tr>

<tr>

<td colspan="2">

<span style="font-size: 8pt">Copyright ©

2006 - Школа ASP.NET 2.0</span></td>

</tr>

</table>

</div>

</form>

</body>

</html>

Первое отличие этой страницы от обычной в том, что она начинается с директивы Master, а не Page. Класс мастер-страницыопределен в файле MasterPage.master.cs:

public partial class MasterPage : System.Web.UI.MasterPage

{

protected void Page_Load(object sender, EventArgs e)

{

}

}

Класс шаблона -- наследник System.Web.UI.MasterPage, который в свою очередь наследует от System.Web.UI.UserControl.

В ней могут находиться любые элементы управления и HTML-код. В ней могут обрабатываться и события страницы. Два элемента ContentPlaceHolder обозначают места, куда вставляется содержание страницы-наследницы.

Теперь нужно создать страницу содержания. Она создается как обычно, только отмечается флажок с надписью Select Master Page. Появляется диалог, в котором необходимо выбрать шаблон страницы:

<%@ Page Language="C#" MasterPageFile="~/MasterPage.master"

AutoEventWireup="true" CodeFile="MainSchool.aspx.cs"

Inherits="MainSchool" Title="Untitled Page" %>

Атрибут MasterPage директивы Page определяет шаблон дизайна, или эталонную страницу данной страницы.

Возможно настроить приложение так, чтобы все страницы наследовали одну страницу шаблона дизайна. В конфигурационном файле в секцию System.web нужно вставить элемент:

<pages masterPageFile="~/ MasterPage.master " />

Но и в этом случае назначение главной страницы в директиве Page имеет приоритет над назначением на уровне приложения. Установка web.config действует на тех страницах, в которых masterPageFile не указан, но определены элементы управленияContent. Эта установка не действует на обычные aspx-страницы.

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

<location path="Lections">

<system.web>

<pages masterPageFile="~/Lections.master" />

</system.web>

Элемент location вставляется в главный узел configuration. Здесь указано, что все страницы из папки Lections используют шаблонную страницу Lections.master.

На странице-наследнице шаблона могут быть только элементы типа Content, каждый из которых соответствует одному элементуContentPlaceHolder шаблона. Нельзя вставлять содержание вне этих элементов, иначе ASP .NET не сможет объединить главную страницу со страницей содержания. Идентификатор ContentPlaceHolder должен совпадать с атрибутомContentPlaceHolderID соответствующего элемента Content:

<asp:Content ID="Content1"

...

Подобные документы

  • Обзор существующих технологий разработки программного обеспечения. Описание платформы NET Framework. Принцип работы платформы: компиляция исходного кода; процесс загрузки и исполнения кода; IL-код и верификация. Новые возможности платформы NET Framework.

    реферат [30,7 K], добавлен 01.03.2011

  • Характеристика и состав Microsoft Solution Framework. Модель команды, её характеристики. Цели качества команды проекта. Модель процессов, её содержание. Принципы управления рисками. Утверждение целей и границ, плана проекта. Модель приложений MSF.

    презентация [752,5 K], добавлен 10.05.2013

  • Специализация, ассортимент товаров магазина. Состав и содержание работ по созданию системы. Требования к веб-сайту. Разработка дизайна страниц. Twitter Bootstrap 2.3, валидация. Тестирование и отладка системы. Исходный код главной страницы и слайдера.

    курсовая работа [2,0 M], добавлен 29.04.2015

  • Изучение сведений o плaтфopме .NET Framework. Характеристика метoдов дocтупa к бaзaм дaнныx. Рaзpaбoтка пpилoжения "Пocтaвкa и pеaлизaция пpoгpaммнoгo oбеcпечения", coдеpжaщего бaзу дaнныx и pacкpывaющего вcе acпекты paзpaбoтки бaзы дaнныx нa языке C+.

    курсовая работа [1,8 M], добавлен 12.12.2011

  • Понятие web-страницы, классификация. Принципы создания и основные элементы. Пример контента сайта "Академия детства". Стандарты разработки дизайна для сайтов дошкольных учреждений. Шаблон главной страницы. Программный инструментарий по разработке.

    курсовая работа [409,2 K], добавлен 13.01.2014

  • Основное программное обеспечение для автоматизации производства. Финансовые и коммуникационные системы. Системы планирования и управления. Текстовые редакторы и табличные процессоры. Финансовое программное обеспечение. Шрифтовые технологии в документах.

    шпаргалка [551,9 K], добавлен 16.08.2010

  • Браузер как программное обеспечение для просмотра веб-сайтов, то есть для запроса веб-страниц, их обработки, вывода и перехода от одной страницы к другой. Теги a, img, Script и Style. Используемые технологии Java. Разработка и реализация программы.

    дипломная работа [571,4 K], добавлен 07.07.2013

  • Особенности разработки Web-страницы, с использованием Microsoft Word. Алгоритм работы: сохранение документа Word, как веб-страницы; просмотр веб-страницы, создание гиперссылок. Настройка и проверка Web-страницы с помощью программы Internet Explorer.

    контрольная работа [2,4 M], добавлен 03.04.2010

  • Установка программной оболочки Denver и системы управления контентом "Joomla". Составление технического задания и схемы главной страницы. Разработка дизайна и системы навигации Web-сайта, запуск в Internet. Проектирование услуги регистрации пользователей.

    курсовая работа [2,3 M], добавлен 03.10.2012

  • Характеристика принципов создания html-страниц и связывания их ссылками так, чтобы можно было произвольным образом переходить от одной страницы к другой. Применение тегов форматирования текста и заголовка окна. Этапы создания html-страницы с таблицей.

    контрольная работа [16,0 K], добавлен 19.06.2014

  • Необходимость создания словаря по технологии для школьников. Основные этапы, требования и особенности создания электронного словаря. Использование морфологического анализа для оформления и дизайна. Принципы создания веб-страниц в Microsoft Publisher.

    творческая работа [2,0 M], добавлен 17.11.2009

  • История развития веб-технологий и существующие проблемы. Назначение и установка Symfony Framework. Создание приложения на основе технологий Symfony Framework. Установка дополнительных библиотек через composer, верстка шаблона, настройка сервисов.

    дипломная работа [712,6 K], добавлен 05.07.2017

  • Физическая структура сайта. Шаблон оформления страницы. Исходный текст шаблона главной HTML-страницы (верстка с использованием фреймов). Фрагмент кода, содержащий карту сайта. Каскадные таблицы стилей. Программное обеспечение, использованное при работе.

    курсовая работа [1,3 M], добавлен 02.07.2014

  • Определение и свойства алгоритма, его разработка. Технология создания прикладной программы. Системное программное обеспечение персонального компьютера, его назначение. Приложения, входящие в пакет MS Office XP. Характеристика внутренних и внешних модемов.

    методичка [1,7 M], добавлен 26.03.2010

  • Основные этапы создания web-сайтов; информационное, программное и техническое обеспечение. Разработка сайта компании "Империя Востока": задачи, структура, выбор концепции дизайна сайта, организация навигации, создание базы данных, формы обратной связи.

    дипломная работа [3,9 M], добавлен 12.12.2013

  • Понятие клиентских приложений, их основные задачи. Программное обеспечение сети Интернет. Характеристика веб-браузеров как основных клиентских приложений Интернет. Сравнительная характеристика существующих веб-браузеров, выбор оптимального варианта.

    дипломная работа [2,6 M], добавлен 23.06.2012

  • Теоретические основания анализа компьютерного программного обеспечения. Анализ основных ведущих компаний по производству программному обеспечению для управления проектами, таких как Primavera, Spider Project, Open Plan Professional и Microsoft Project.

    курсовая работа [33,3 K], добавлен 11.05.2014

  • Управление электронным обучением. Технологии электронного обучения e-Learning. Программное обеспечение для создания e-Learning решений. Компоненты LMS на примере IBM Lotus Learning Management System и Moodle. Разработка учебных курсов в системе Moodle.

    курсовая работа [146,6 K], добавлен 11.06.2009

  • Конечная цель любой компьютерной программы - управление аппаратными средствами. Ядро операционной системы компьютера: программное обеспечение системного уровня. Компьютерные сети и их назначение. Основы функционирования Интернета и его основных служб.

    реферат [44,0 K], добавлен 07.12.2011

  • Классификация программного обеспечения, его особенности, назначение. Программное обеспечение для работы с текстом, изображением, прикладное, офисное, для работы в Интернете. Системы программирования, специфика программного обеспечения, что такое вирусы.

    презентация [1,2 M], добавлен 25.02.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.