https://technet.microsoft.com/en-us/library/ms143221(v=sql.105).aspx |
Серверные элементы управления
Label
Этот элемент управления позволяет выводить отформатированный текст, аналогично обобщенному строчному элементу разметки <SPAN>. Всеми свойствами этого объекта можно управлять из вашей программы ASP .NET.
Большинство методов и свойств унаследовано от WebControl. Главное собственное свойство — это, конечно, его содержание — Text.
Нижеперечисленные свойства управляют внешним видом элемента, присутствуют в классе WebControl и, следовательно, применимы ко всем элементам-наследникам WebControl, а не только к Label.
В версии 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: означает, что данный элемент стандартный. Можно создавать собственные контролы со своими префиксами (см. "Пользовательские и собственные серверные элементы управления" ).
Текст между открывающим и закрывающим тегами будет показан на странице. Это содержание его свойства 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>
и наслаждаемся эффектом. Надпись красного цвета на сером фоне. Стиль границы делает метку приподнятой над фоном.
У 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, который мы скоро обсудим.