Серверный веб-элемент управления Panel предоставляет контейнерный элемент управления на веб-странице ASP.NET, который можно использовать в качестве родительского элемента для статического текста и других элементов управления.
1. Предыстория
Вы можете использовать элемент управления Panel в качестве контейнера для других элементов управления. Этот метод особенно полезен, когда вы создаете контент программным способом и вам нужен способ вставки контента на страницу. В следующих разделах описаны другие способы использования элемента управления Panel.
1. Контейнер динамически генерируемых элементов управления.
Элемент управления Panel предоставляет удобный контейнер для элементов управления, созданных во время выполнения.
2. Групповые элементы управления и маркеры
Группой элементов управления и связанными с ними тегами можно управлять как единым целым, поместив их в элемент управления Panel и затем манипулируя им. Например, вы можете скрыть или отобразить группу элементов управления на панели, задав свойство Visible панели.
3. Форма с кнопками по умолчанию.
Вы можете поместить элемент управления TextBox и элемент управления Button в элемент управления Panel, а затем определить кнопку по умолчанию, задав для свойства DefaultButton элемента управления Panel идентификатор кнопки на панели. Если пользователь нажимает Enter во время ввода текстового поля на панели, это имеет тот же эффект, как если бы пользователь нажал определенную кнопку по умолчанию. Это помогает пользователям более эффективно работать с формами проектов.
4. Добавьте полосы прокрутки к другим элементам управления.
Некоторые элементы управления (например, элемент управления TreeView) не имеют встроенных полос прокрутки. Вы можете добавить поведение прокрутки, поместив элемент управления полосой прокрутки в элемент управления Panel. Чтобы добавить полосы прокрутки к элементу управления Panel, задайте свойства Height и Width, ограничьте элемент управления Panel определенным размером, а затем задайте свойство ScrollBars.
4. Настраиваемые области на странице.
Вы можете использовать элемент управления «Панель» для создания областей на странице с настраиваемым внешним видом и поведением следующим образом:
·Создание группового поля с заголовком. Вы можете настроить свойство GroupingText для отображения заголовка. При отрисовке страницы вокруг элемента управления Panel появляется поле с заголовком, в котором заголовком является указанный вами текст.
Примечание. В элементе управления «Панель» нельзя одновременно указать полосы прокрутки и сгруппированный текст. Если задан сгруппированный текст, его приоритет выше, чем полоса прокрутки.
·Создание областей на странице с пользовательскими цветами или другим внешним видом. Элемент управления «Панель» поддерживает свойства внешнего вида (такие как BackColor и BorderWidth), которые можно настроить для создания уникального внешнего вида области на странице.
Описание. Установка свойства GroupingText автоматически отображает границу вокруг элемента управления Panel.
2. Практическое руководство. Добавление элемента управления Panel на страницу веб-форм.
1. В представлении «Дизайн» на вкладке «Стандартные» панели инструментов перетащите элемент управления «Панель» на страницу.
2. Чтобы создать статический текст, щелкните элемент управления и введите текст. Чтобы добавить элементы управления, перетащите их из панели инструментов в элемент управления «Панель».
Примечание. Чтобы добавить статический текст в элемент управления Panel во время выполнения, вам необходимо создать элемент управления Literal и установить его свойство Text. Затем литеральные объекты можно добавлять на панель программным способом так же, как и любой элемент управления. Дополнительные сведения о добавлении элементов управления см. в разделе Практическое руководство. Программное добавление элементов управления на веб-страницу ASP.NET.
3. Вы также можете перетащить границу панели, чтобы изменить размер элемента управления.
Описание: этот элемент управления автоматически изменяет размер для отображения всех своих дочерних элементов управления (даже если они превышают заданную высоту).
4. Вы также можете установить свойства элемента управления Panel (как описано в следующей таблице), чтобы указать, как панель взаимодействует со своими дочерними элементами управления.
Описание недвижимости
Горизонтальное выравнивание
Указывает выравнивание дочерних элементов управления на панели (слева, справа, по центру или по ширине).
Сворачивать
Указывает, переносится ли слишком широкое содержимое панели на следующую строку или обрезается по краю панели.
Направление
Указывает, отображается ли содержимое элемента управления слева направо или справа налево. Это свойство полезно при создании областей на странице, ориентированных иначе, чем вся страница.
Полосы прокрутки
Если вы установили свойства Height и Width, чтобы ограничить элемент управления Panel определенным размером, вы можете добавить полосы прокрутки, задав свойство ScrollBars.
ГруппировкаТекст
Отображает рамку и заголовок вокруг элемента управления Panel.
проиллюстрировать:
Установка свойства GroupingText приводит к тому, что полосы прокрутки не отображаются (если вы указываете полосы прокрутки).
3. Класс панели
Панель управления представляет собой контейнер для других элементов управления. Этот элемент управления особенно полезен, если вы хотите программно создать элементы управления, скрыть/показать набор элементов управления или локализовать набор элементов управления.
Свойство Direction полезно для локализации содержимого элемента управления Panel для отображения текста на языках, которые пишутся справа налево, например на арабском или иврите.
Элемент управления Panel предоставляет несколько свойств, которые позволяют настраивать поведение и отображение содержимого элемента управления. Используйте свойство BackImageUrl для отображения пользовательского изображения для элемента управления Panel. Используйте свойство ScrollBars, чтобы указать полосы прокрутки для элемента управления.
Пример
1. В следующем примере показано, как использовать элемент управления Panel для программного создания элементов управления и скрытия/отображения группы элементов управления.
Примечание. В следующем примере кода используется однофайловая модель кода, и он может работать неправильно при копировании непосредственно в файл кода программной части. Этот пример кода необходимо скопировать в пустой текстовый файл с расширением ASPX.
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
" http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html>
<голова>
<title>Пример панели</title>
<script runat="сервер">
void Page_Load (отправитель объекта, EventArgs e) {
// Показать или скрыть содержимое панели.
если (Проверка1.Проверено) {
Panel1.Visible = ложь;
}
еще {
Panel1.Visible=истина;
}
// Генерируем элементы управления Label.
int numlabels = Int32.Parse(DropDown1.SelectedItem.Value);
for (int i=1; i<=numlabels; i++) {
Метка l = новая метка();
l.Text = «Метка» + (i).ToString();
l.ID = «Метка» + (i).ToString();
Panel1.Controls.Add(l);
Panel1.Controls.Add(new LiteralControl("<br />"));
}
// Генерируем элементы управления текстовым полем.
int numtexts = Int32.Parse(DropDown2.SelectedItem.Value);
for (int i=1; i<=numtexts; i++) {
TextBox т = новый TextBox();
t.Text = "TextBox" + (i).ToString();
t.ID = "TextBox" + (i).ToString();
Panel1.Controls.Add(t);
Panel1.Controls.Add(new LiteralControl("<br />"));
}
}
</скрипт>
</голова>
<тело>
<h3>Пример панели</h3>
<form id="form1" runat="server">
<asp:Panel id="Panel1" runat="server"
BackColor="гейнсборо"
Высота="200 пикселей"
Ширина="300 пикселей">
Panel1: Вот немного статического контента...
<br />
</asp:Панель>
<br />
Создать метки:
<asp:DropDownList id="DropDown1" runat="server">
<asp:ListItem Value="0">0</asp:ListItem>
<asp:ListItem Value="1">1</asp:ListItem>
<asp:ListItem Value="2">2</asp:ListItem>
<asp:ListItem Value="3">3</asp:ListItem>
<asp:ListItem Value="4">4</asp:ListItem>
</asp:DropDownList>
<br />
Создать текстовые поля:
<asp:DropDownList id="DropDown2" runat="server">
<asp:ListItem Value="0">0</asp:ListItem>
<asp:ListItem Value="1">1</asp:ListItem>
<asp:ListItem Value="2">2</asp:ListItem>
<asp:ListItem Value="3">3</asp:ListItem>
<asp:ListItem Value="4">4</asp:ListItem>
</asp:DropDownList>
<br />
<asp:CheckBox id="Check1" Text="Скрыть панель" runat="server"/>
<br />
<asp:Button Text="Обновить панель" runat="server"/>
</форма>
</тело>