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, который мы скоро обсудим.