Основы ASP.NET 2.0

       

Label


Этот элемент управления позволяет выводить отформатированный текст, аналогично обобщенному строчному элементу разметки <SPAN>. Всеми свойствами этого объекта можно управлять из вашей программы ASP .NET.

Большинство методов и свойств унаследовано от WebControl. Главное собственное свойство — это, конечно, его содержание — Text.

Нижеперечисленные свойства управляют внешним видом элемента, присутствуют в классе WebControl и, следовательно, применимы ко всем элементам-наследникам WebControl, а не только к Label.

BackColorЦвет фона
BorderColorЦвет границы элемента управления
BorderStyleСтиль границы — сплошной, пунктир, точечный, двойной и другие
BorderWidthШирина границы
EnabledАктивность. Если false, нельзя вводить данные, не получает фокус
FontШрифт, состоит из нескольких атрибутов
ForeColorЦвет, которым отображается текст
HeightВысота элемента
WidthШирина элемента
VisibleВиден ли элемент управления
TabIndexИндекс табуляции, в порядке номеров которых в форме перемещается фокус при нажатии на клавишу Tab
ToolTipТекст окна подсказки

В версии 2.0 появилась возможность задавать для элементов управления "горячие" клавиши, или клавиши быстрого доступа. Свойство AccessKey определяет последовательность нажатых клавиш, которые приводят к установке фокуса на данном элементе. Например, AccessKey="N" значит, что для вызова функциональности надо нажать на Alt+N. Установить фокус в Label невозможно, поэтому устанавливаем свойство AssociatedControlId, которое указывает на другой элемент.


Если это TextBox, то фокус устанавливается в него.

Пример описания элемента Label:

<asp:Label id="ShopNews" runat="server" Font-Size =20 ForeColor="red" BackColor ="lightgray" BorderWidth=4 BorderStyle=groove Height=50 width=500> Новости торговой площадки </asp:Label>

Префикс asp: означает, что данный элемент стандартный. Можно создавать собственные контролы со своими префиксами (см. лекцию 14).

Текст между открывающим и закрывающим тегами будет показан на странице. Это содержание его свойства Text.

Так как Text — это такой же атрибут, как и другие, мы можем написать иначе:

<asp:Label id="ShopNews" runat="server" Font-Size =20 ForeColor="red" BackColor ="lightgray" BorderWidth=4 BorderStyle=groove Height=50 width=500 Text= "Новости торговой площадки" />

Вставим это описание в страницу aspx

<html xmlns=""http://www.w3.org/1999/xhtml""> <head> <title>Торговая площадка</title> </head> <body> <center> <h2> Демонстрация метки</h2> <br /> <form id="frmDemo" runat="server"> <asp:Label ID="ShopNews" runat="server" Font-Size="20" ForeColor="red" BackColor="lightgray" BorderWidth="4" BorderStyle="groove" Height="50" Width="500" Text="Новости торговой площадки" /> </form> </center> </body> </html>



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


Рис. 3.1. 

У Label, как и у всех остальных классов, есть конструктор. Это значит, что создать его можно прямо в программе, а не прописывать на форме.

<%@ Page Language="C#" %> <%@ Import Namespace= "System.Drawing" %>

<script runat="server">

void Page_Load() { Label ShopNews = new Label(); ShopNews.Text = "Новости торговой площадки"; ShopNews.Font.Size=20; ShopNews.ForeColor=Color.Red; ShopNews.BackColor=Color.LightGray; ShopNews.BorderWidth=4; ShopNews.BorderStyle=BorderStyle.Groove; ShopNews.Height=50; ShopNews.Width=500;

frmDemo.Controls.Add(ShopNews); }

</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Торговая площадка</title> </head> <body> <center> <h2>Демонстрация метки</h2><br /> <form id="frmDemo" runat="server">

</form> </center> </body> </html>

Обратите внимание на директиву <%@ Import Namespace= "System.Drawing" %>. Директива импорта нужна, чтобы обращаться к перечислению Color названий цветов, определенному в System.Drawing.

Посмотрим, что выдал ASP .NET браузеру. Вот код HTML, относящийся к нашей метке:

<form name="frmDemo" method="post" action="shop.aspx" id="frmDemo"> <div> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTEzODAzNzU2NDZkZH95eciStELThSpcgXVWEFYeQxpR" /> </div> <span id="ShopNews" style="display:inline-block;color:Red;back- ground-color:LightGrey;border-width:4px;border-style:Groove;font- size:20pt;height:50px;width:500px;">Новости торговой площадки</span> </form>

Как видим, ASP .NET превратил метку в элемент разметки <span>, задав ему стили CSS. В форме появился еще один невидимый элемент по имени =__VIEWSTATE, который мы скоро обсудим.


Содержание раздела