ButtonField Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет поле, отображаемое как кнопка в элементе управления с привязкой к данным.
public ref class ButtonField : System::Web::UI::WebControls::ButtonFieldBase
public class ButtonField : System.Web.UI.WebControls.ButtonFieldBase
type ButtonField = class
inherit ButtonFieldBase
Public Class ButtonField
Inherits ButtonFieldBase
- Наследование
Примеры
В следующем примере кода показано, как использовать ButtonField объект для отображения столбца кнопок команд в элементе GridView управления.
<%@ Page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void CustomersGridView_RowCommand(Object sender, GridViewCommandEventArgs e)
{
// If multiple ButtonField column fields are used, use the
// CommandName property to determine which button was clicked.
if(e.CommandName=="Select")
{
// Convert the row index stored in the CommandArgument
// property to an Integer.
int index = Convert.ToInt32(e.CommandArgument);
// Get the last name of the selected author from the appropriate
// cell in the GridView control.
GridViewRow selectedRow = CustomersGridView.Rows[index];
TableCell contactName = selectedRow.Cells[1];
string contact = contactName.Text;
// Display the selected author.
Message.Text = "You selected " + contact + ".";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ButtonField Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>ButtonField Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"
AssociatedControlID="CustomersGridView"/>
<!-- Populate the Columns collection declaratively. -->
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="false"
onrowcommand="CustomersGridView_RowCommand"
runat="server">
<columns>
<asp:buttonfield buttontype="Button"
commandname="Select"
headertext="Select Customer"
text="Select"/>
<asp:boundfield datafield="CompanyName"
headertext="Company Name"/>
<asp:boundfield datafield="ContactName"
headertext="Contact Name"/>
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. -->
<asp:sqldatasource id="CustomersSqlDataSource"
selectcommand="Select [CustomerID], [CompanyName], [ContactName], [ContactTitle] From [Customers]"
connectionstring="<%$ ConnectionStrings:NorthWindConnection%>"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
<%@ Page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub CustomersGridView_RowCommand(ByVal sender As Object, ByVal e As GridViewCommandEventArgs)
' If multiple ButtonField column fields are used, use the
' CommandName property to determine which button was clicked.
If e.CommandName = "Select" Then
' Convert the row index stored in the CommandArgument
' property to an Integer.
Dim index As Integer = Convert.ToInt32(e.CommandArgument)
' Get the last name of the selected author from the appropriate
' cell in the GridView control.
Dim selectedRow As GridViewRow = CustomersGridView.Rows(index)
Dim contactCell As TableCell = selectedRow.Cells(1)
Dim contact As String = contactCell.Text
' Display the selected author.
Message.Text = "You selected " & contact & "."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ButtonField Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>ButtonField Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"
AssociatedControlID="CustomersGridView"/>
<!-- Populate the Columns collection declaratively. -->
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="false"
onrowcommand="CustomersGridView_RowCommand"
runat="server">
<columns>
<asp:buttonfield buttontype="Button"
commandname="Select"
headertext="Select Customer"
text="Select"/>
<asp:boundfield datafield="CompanyName"
headertext="Company Name"/>
<asp:boundfield datafield="ContactName"
headertext="Contact Name"/>
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. -->
<asp:sqldatasource id="CustomersSqlDataSource"
selectcommand="Select [CustomerID], [CompanyName], [ContactName], [ContactTitle] From [Customers]"
connectionstring="<%$ ConnectionStrings:NorthWindConnection%>"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
Комментарии
Класс ButtonField используется элементами управления с привязкой к данным (например GridView , и DetailsView) для отображения кнопки для каждой отображаемой записи. Объект ButtonField отображается по-разному в зависимости от элемента управления, привязанного к данным, в котором он используется. Например, GridView элемент управления отображает ButtonField объект в виде столбца, а DetailsView элемент управления отображает его в виде строки.
Нажатие кнопки в поле кнопки вызывает событие команды родительского элемента управления с привязкой к данным. Вы можете предоставить пользовательскую подпрограмму для выполнения при нажатии кнопки команды, предоставив обработчик событий для события команды.
Замечание
Элемент GridView управления вызывает RowCommand событие, а DetailsView элемент управления вызывает ItemCommand событие.
Чтобы определить индекс записи, которая вызывает событие команды, используйте CommandArgument свойство аргумента события, передаваемого в событие команды для элемента управления с привязкой к данным. Класс ButtonField автоматически заполняет CommandArgument свойство соответствующим значением индекса.
Чтобы указать тип отображаемой кнопки, используйте ButtonType свойство. При отображении ссылки или кнопки команды используйте Text свойство, чтобы указать подпись для отображения на кнопках.
Замечание
Если задать Text свойство, все кнопки в общей папке ButtonField имеют одинаковый заголовок.
Кроме того, объект можно привязать ButtonField к полю в источнике данных. Это позволяет отображать различные подписи для кнопок в объекте ButtonField . Значения, которые находятся в указанном поле, используются для текстовых подписей кнопок. DataTextField Задайте свойство для привязки ButtonField объекта к полю в источнике данных.
При отображении кнопки изображения используйте ImageUrl свойство, чтобы указать изображение для кнопок в объекте ButtonField .
Замечание
Все кнопки в объекте ButtonField используют одно и то же изображение.
Объект можно скрыть ButtonField в элементе управления, привязанном к данным, задав Visible для свойства значение false.
Объект ButtonField позволяет настраивать разделы верхнего и нижнего колонтитулов. Чтобы отобразить заголовок в разделе верхних или нижних колонтитулов, задайте HeaderText значения или FooterText свойства соответственно. Вместо отображения текста в разделе заголовка можно отобразить изображение, задав HeaderImageUrl свойство. Чтобы скрыть раздел заголовка в объекте ButtonField , задайте ShowHeader для свойства значение false.
Замечание
Некоторые элементы управления с привязкой к данным (например GridView , элемент управления) могут отображать или скрывать только весь раздел заголовка элемента управления. Эти элементы управления, привязанные к данным, не поддерживают ShowHeader свойство для отдельного поля кнопки. Чтобы отобразить или скрыть весь раздел заголовка элемента управления с привязкой к данным (если он доступен), используйте ShowHeader свойство для элемента управления.
Вы также можете настроить внешний вид объекта (цвет шрифта ButtonField , цвет фона и т. д.), задав свойства стиля для различных частей поля. В следующей таблице перечислены различные свойства стиля.
| Свойство Style | Параметры стиля для |
|---|---|
| ControlStyle | Дочерний веб-сервер элементов управления ButtonField. |
| FooterStyle | Нижний колонтитул элемента ButtonField. |
| HeaderStyle | Раздел заголовка ButtonFieldобъекта . |
| ItemStyle | Элементы данных в элементе ButtonField. |
Конструкторы
| Имя | Описание |
|---|---|
| ButtonField() |
Инициализирует новый экземпляр класса ButtonField. |
Свойства
| Имя | Описание |
|---|---|
| AccessibleHeaderText |
Возвращает или задает текст, отображаемый |
| ButtonType |
Возвращает или задает тип кнопки для отображения в поле кнопки. (Унаследовано от ButtonFieldBase) |
| CausesValidation |
Возвращает или задает значение, указывающее, выполняется ли проверка при нажатии кнопки в объекте ButtonFieldBase . (Унаследовано от ButtonFieldBase) |
| CommandName |
Возвращает или задает строку, представляющую действие, выполняемое при нажатии кнопки в объекте ButtonField . |
| Control |
Возвращает ссылку на элемент управления данными, DataControlField с которым связан объект. (Унаследовано от DataControlField) |
| ControlStyle |
Возвращает стиль всех элементов управления веб-сервера, содержащихся в объекте DataControlField . (Унаследовано от DataControlField) |
| DataTextField |
Возвращает или задает имя поля данных, для которого значение привязано к Text свойству Button элемента управления, отображаемого ButtonField объектом. |
| DataTextFormatString |
Возвращает или задает строку, указывающую формат отображения для значения поля. |
| DesignMode |
Возвращает значение, указывающее, просматривается ли в настоящее время поле управления данными в среде разработки. (Унаследовано от DataControlField) |
| FooterStyle |
Возвращает или задает стиль нижнего колонтитула поля управления данными. (Унаследовано от DataControlField) |
| FooterText |
Возвращает или задает текст, отображаемый в нижнем колонтитуле поля элемента управления данными. (Унаследовано от DataControlField) |
| HeaderImageUrl |
Возвращает или задает URL-адрес изображения, отображаемого в элементе заголовка поля элемента управления данными. (Унаследовано от DataControlField) |
| HeaderStyle |
Возвращает или задает стиль заголовка поля управления данными. (Унаследовано от DataControlField) |
| HeaderText |
Возвращает или задает текст, отображаемый в элементе заголовка поля элемента управления данными. (Унаследовано от DataControlField) |
| ImageUrl |
Возвращает или задает изображение, отображаемое для каждой кнопки в объекте ButtonField . |
| InsertVisible |
Возвращает значение, указывающее, отображается ли DataControlField объект, когда его родительский элемент управления с привязкой к данным находится в режиме вставки. (Унаследовано от DataControlField) |
| IsTrackingViewState |
Возвращает значение, указывающее, сохраняет ли DataControlField объект изменения в состоянии представления. (Унаследовано от DataControlField) |
| ItemStyle |
Возвращает стиль любого текстового содержимого, отображаемого полем управления данными. (Унаследовано от DataControlField) |
| ShowHeader |
Возвращает или задает значение, указывающее, отображается ли раздел заголовка в объекте ButtonFieldBase . (Унаследовано от ButtonFieldBase) |
| SortExpression |
Возвращает или задает выражение сортировки, используемое элементом управления источниками данных для сортировки данных. (Унаследовано от DataControlField) |
| Text |
Получает или задает статическую подпись, отображаемую для каждой кнопки в объекте ButtonField . |
| ValidateRequestMode |
Возвращает или задает значение, указывающее, проверяет ли элемент управления входные данные клиента. (Унаследовано от DataControlField) |
| ValidationGroup |
Возвращает или задает имя группы элементов управления проверки для проверки нажатия кнопки в объекте ButtonFieldBase . (Унаследовано от ButtonFieldBase) |
| ViewState |
Получает словарь сведений о состоянии, позволяющий сохранять и восстанавливать состояние DataControlField представления объекта в нескольких запросах на одну и ту же страницу. (Унаследовано от DataControlField) |
| Visible |
Возвращает или задает значение, указывающее, отображается ли поле элемента управления данными. (Унаследовано от DataControlField) |
Методы
| Имя | Описание |
|---|---|
| CloneField() |
Создает дубликат копии текущего DataControlFieldпроизводного объекта. (Унаследовано от DataControlField) |
| CopyProperties(DataControlField) |
Копирует свойства текущего ButtonField объекта в указанный DataControlField объект. |
| CreateField() |
Создает и возвращает новый экземпляр ButtonField класса. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| ExtractValuesFromCell(IOrderedDictionary, DataControlFieldCell, DataControlRowState, Boolean) |
Извлекает значение поля управления данными из текущей ячейки таблицы и добавляет значение в указанную IDictionary коллекцию. (Унаследовано от DataControlField) |
| FormatDataTextValue(Object) |
Форматирует указанное значение поля для ячейки в объекте ButtonField . |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| Initialize(Boolean, Control) |
Инициализирует текущий ButtonField объект. |
| InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32) |
Инициализирует указанный DataControlFieldCell объект в указанное состояние строки. |
| LoadViewState(Object) |
Восстанавливает ранее сохраненное состояние представления источника данных. (Унаследовано от DataControlField) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| OnFieldChanged() |
Вызывает событие |
| SaveViewState() |
Сохраняет изменения, внесенные DataControlField в состояние представления с момента публикации страницы на сервер. (Унаследовано от DataControlField) |
| ToString() |
Возвращает строку, представляющую этот DataControlField объект. (Унаследовано от DataControlField) |
| TrackViewState() |
Позволяет DataControlField объекту отслеживать изменения состояния представления, чтобы они могли храниться в свойстве элемента управления ViewState и сохраняться в запросах на одну и ту же страницу. (Унаследовано от DataControlField) |
| ValidateSupportsCallback() |
Определяет, содержатся ли элементы управления, содержащиеся в ButtonField обратных вызовах объекта. |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IDataSourceViewSchemaAccessor.DataSourceViewSchema |
Возвращает или задает схему, связанную с этим DataControlField объектом. (Унаследовано от DataControlField) |
| IStateManager.IsTrackingViewState |
Возвращает значение, указывающее, сохраняет ли DataControlField объект изменения в состоянии представления. (Унаследовано от DataControlField) |
| IStateManager.LoadViewState(Object) |
Восстанавливает ранее сохраненное состояние представления поля управления данными. (Унаследовано от DataControlField) |
| IStateManager.SaveViewState() |
Сохраняет изменения, внесенные DataControlField в состояние представления с момента публикации страницы на сервер. (Унаследовано от DataControlField) |
| IStateManager.TrackViewState() |
Позволяет DataControlField объекту отслеживать изменения состояния представления, чтобы они могли храниться в свойстве элемента управления ViewState и сохраняться в запросах на одну и ту же страницу. (Унаследовано от DataControlField) |