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