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 . Значения, которые находятся в указанном поле, используются для текстовых субтитров кнопок. Задайте свойство для привязки DataTextFieldButtonField объекта к полю в источнике данных.

При отображении кнопки 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

Возвращает или задает текст, отображающийся как значение свойство AbbreviatedText некоторых элементов управления.

(Унаследовано от DataControlField)
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()

Вызывает событие FieldChanged.

(Унаследовано от DataControlField)
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)

Применяется к

См. также раздел