Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метода ИТ.doc
Скачиваний:
12
Добавлен:
07.11.2018
Размер:
2.76 Mб
Скачать

Структура asp.Net-страницы

Рассмотрим несколько простых ASP.NET –страниц.

<html>

<head>

<title>Sample Page</title>

</head>

<body>

<p>Hello Web!</p>

</body>

</html>

Код для соответствующей ASP.NET-страницы выглядит следующим образом:

<html>

<head>

<title>Sample Page</tytle>

</head>

<body>

<form runat=”server”>

<asp:Label

Id=”lblMessage”

Font-Size=”12pt”

Font-Bold=”True”

Font-Name=”Lucida Console”

Text=”<center><b><h1>Hello Web!</h1></b></center>”

runat=”server”

/>

</form>

</body>

</html>

Этот тег, как, правило, помещается на ASP.NET-страницу и дает указание компилятору обрабатывать элементы управления страницы. Обратите внимание на то, что данный тег имеет свойство runat, для которого установлено значение «server». При использовании этого свойства элемент управления обрабатывается компилятором, а не передается на сторону клиента.

Во-вторых, на страницу добавлен элемент управления, в данном случае – Label:

<asp:Label

id=”lblMessage”

Font-Size=”12pt”

Font-Bold=”True”

Font-Name=”Lucida Console”

Text=”<center><b><h1>Hello Web!</h1></b></center>”

runat=”server”

/>

Элемент управления Label является средством размещения на странице текста, который может содержать теги HTML. Изменяя значения свойств этого элемента управления в коде, можно динамически изменять текст на странице.

В первой строке компилятору сообщается, с каким объектом ведется работа( в рассматриваемом случае – с элементом управления Label):

<asp:Label

Далее задаются различные свойства элемента управления. В первую очередь определяется его имя:

id =“lblMessage”

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

Затем устанавливаем размер шрифта:

Font –Size=”12pt”

определяется его начертание:

Font-Bold=”True”

и, наконец, указывается название шрифта, который нужно использовать:

Font-Name=”Lucida Console”

На следующем этапе текст помещается в элемент управления Label. Поскольку текст обрабатывается как HTML-код, он может содержать HTML-теги:

Text=”<center><b><h1>Hello Web!</h1></b></center>”

Наконец, вводится сообщение компилятору о том, что нужно обработать элемент

Управления:

runat=”server”

После этой конструкции закрывается тег элемента управления:

/>

Поскольку ASP.NET – это управляемая событиями среда программирования, мы не ограничены необходимостью помещать весь код в единственный блок. Это можно проследить на следующем примере:

На страницу добавлены дополнительный блок кода и два элемента управления.

<%@ Page Language=VB Debug=true %>

<%@ Import Namespace="System.Data" %>

<script runat=server>

Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)

if Not IsPostBack Then

lblMessage.Text="<br><br><b><h2>Заполните поле"_

& "перед нажатием кнопки.</h2></b>"

End If

End Sub

Sub SubmitBtn_Click (Sender AS Object, E As EventArgs)

lblMessage.Text="<br><br><b><h2>Привет " & txtName.Text_

& "</h2></b>"

End Sub

</script>

<html>

<head>

<title>Пример</title>

</head>

<body>

<form runat="server">

<asp:Label

id = "lblMessage"

Font-Size="12pt"

Font-Bold="True"

Font-Name="Lucida Console"

runat = "server"

/>

<br><b>Имя:</b><br>

<asp:TextBox

id="txtName"

Columns="25"

MaxLength="30"

runat="server"

/>

<br><br>

<asp:button

id="butOK"

text=" OK "

Type="Submit"

OnClik="SubmitBtn_Click"

runat="server"

/>

</form>

</body>

</html>

</body>

</html>

Первый дополнительный элемент управления –TextBox – подобен Text языка HTML:

<asp:TextBox

Свойству ID присваивается значение txtName. Так мы ссылаемся на элемент управления в коде.

Id=”txtName”

Следующие значения – ширина колонок, отводимая для элемента управления:

Columns=”25”

а также максимальное число символов, которые можно ввести в элементе управления:

MaxLength=”30”

Необходимо указать компилятору, что обработка данного элемента управления должна производиться на сервере:

Runat=”server”

Рассмотрим второй элемент управления – Button, аналог тега Submit языка HTML:

<asp:button

В первую очередь элементу управления присваивается имя:

Id=”butOK”

Далее вводится текс, который должен отображаться на нем:

Text=” OK ”

Затем компилятору указывается необходимый тип – тег HTML Submit:

Type=”Submit”

С этим элементов управления может быть связан код, который выполняется при наступлении определенного события (ведь работа выполняется в управляемой событиями среде программирования). В данном примере задается, что в результате выполнения щелчка на кнопке – при наступлении события OnClick – должна выполняться процедура SubmitBtn_Click. Следует отметить, что процедуру с таким именем надлежит включить в код для корректного запуска страницы.

OnClick=”SubmitBtn_Click”

Необходимо указать компилятору, что обработка данного элемента управления должна производиться на стороне сервера:

Runat=”server”

Как и прежде, первый блок кода выполняется при загрузке страницы:

Sub Page_Load (ByVal Sender as Object, ByVal E as EventArgs)

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

If Not IsPostBack Then

В этом случае свойству Text элемента управления Label в качестве значения присваивается текст такой инструкции для пользователя:

lblMessage.Text=”<br>< br><b><h2>Заполнить поле” _

& “перед нажатием кнопки.</h2></b>”

Следующая процедура активизируется при выполнении щелчка на элементе управления Button. Важно помнить, что имя события должно точно соответствовать значению свойства OnClick, заданному при определении элемента управления:

Sub SubmitBtn_Click(Sender As Object, E As EventArgs)

В следующей конструкции задано, чтобы имя, введенное посетителем в элемент управления TextBox, было передано элементу управления Label:

lblMessage.Text=”<br><br><b><h2>Привет” & txtName.Text_

&”</h2></b>”