Поделиться через


CommandField Класс

Определение

Представляет специальное поле, отображающее кнопки команд для выбора, редактирования, вставки или удаления операций в элементе управления с привязкой к данным.

public ref class CommandField : System::Web::UI::WebControls::ButtonFieldBase
public class CommandField : System.Web.UI.WebControls.ButtonFieldBase
type CommandField = class
    inherit ButtonFieldBase
Public Class CommandField
Inherits ButtonFieldBase
Наследование

Примеры

В следующем примере кода показано, как использовать CommandField поле для отображения элементов управления для изменения записи в элементе GridView управления.


<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>CommandField Example</title>
</head>
<body>
    <form id="form1" runat="server">
      
      <h3>CommandField Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"  
        runat="server">
        
        <columns>
          <asp:commandfield showeditbutton="true"
            headertext="Edit Controls"/>
          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID" />
          <asp:boundfield datafield="CompanyName"
            headertext="Company Name"/>
          <asp:boundfield datafield="Address"
            headertext="Address"/>
          <asp:boundfield datafield="City"
            headertext="City"/>
          <asp:boundfield datafield="PostalCode"
            headertext="ZIP Code"/>
          <asp:boundfield datafield="Country"
            headertext="Country"/>
        </columns>
        
      </asp:gridview>
            
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        updatecommand="Update Customers Set CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country Where (CustomerID = @CustomerID)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>CommandField Example</title>
</head>
<body>
    <form id="form1" runat="server">
      
      <h3>CommandField Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"  
        runat="server">
        
        <columns>
          <asp:commandfield showeditbutton="true"
            headertext="Edit Controls"/>
          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID" />
          <asp:boundfield datafield="CompanyName"
            headertext="Company Name"/>
          <asp:boundfield datafield="Address"
            headertext="Address"/>
          <asp:boundfield datafield="City"
            headertext="City"/>
          <asp:boundfield datafield="PostalCode"
            headertext="ZIP Code"/>
          <asp:boundfield datafield="Country"
            headertext="Country"/>
        </columns>
        
      </asp:gridview>
            
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        updatecommand="Update Customers Set CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country Where (CustomerID = @CustomerID)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
            
    </form>
  </body>
</html>

В следующем примере кода показано, как использовать CancelTextEditTextи UpdateText свойства для настройки текста для элементов управления редактированием.


<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>CommandField Example</title>
</head>
<body>
    <form id="form1" runat="server">
      
      <h3>CommandField Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"  
        runat="server">
        
        <columns>
          <asp:commandfield showeditbutton="true"
            edittext="Edit Customer"
            canceltext="Discard"
            updatetext="Revise"
            headertext="Edit Controls"/>
          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID" />
          <asp:boundfield datafield="CompanyName"
            headertext="Company Name"/>
          <asp:boundfield datafield="Address"
            headertext="Address"/>
          <asp:boundfield datafield="City"
            headertext="City"/>
          <asp:boundfield datafield="PostalCode"
            headertext="ZIP Code"/>
          <asp:boundfield datafield="Country"
            headertext="Country"/>
        </columns>
        
      </asp:gridview>
            
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        updatecommand="Update Customers Set CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country Where (CustomerID = @CustomerID)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>CommandField Example</title>
</head>
<body>
    <form id="form1" runat="server">
      
      <h3>CommandField Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"  
        runat="server">
        
        <columns>
          <asp:commandfield showeditbutton="true"
            edittext="Edit Customer"
            canceltext="Discard"
            updatetext="Revise"
            headertext="Edit Controls"/>
          <asp:boundfield datafield="CustomerID"
            headertext="Customer ID" />
          <asp:boundfield datafield="CompanyName"
            headertext="Company Name"/>
          <asp:boundfield datafield="Address"
            headertext="Address"/>
          <asp:boundfield datafield="City"
            headertext="City"/>
          <asp:boundfield datafield="PostalCode"
            headertext="ZIP Code"/>
          <asp:boundfield datafield="Country"
            headertext="Country"/>
        </columns>
        
      </asp:gridview>
            
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSqlDataSource"  
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        updatecommand="Update Customers Set CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country Where (CustomerID = @CustomerID)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
            
    </form>
  </body>
</html>

Комментарии

Класс CommandField — это специальное поле, используемое элементами управления с привязкой к данным (например GridView , и DetailsView) для отображения кнопок команд, выполняющих удаление, изменение, вставку или выбор операций. Кнопки команд для выполнения этих операций можно показать или скрыть с помощью свойств, показанных в следующей таблице.

Недвижимость Описание
ShowDeleteButton Отображает или скрывает кнопку "Удалить" в поле для каждой записи в элементе управления с привязкой CommandField к данным. Кнопка "Удалить" позволяет пользователю удалять запись из источника данных.
ShowEditButton Отображает или скрывает кнопку "Изменить" в CommandField поле для каждой записи в элементе управления с привязкой к данным. Кнопка "Изменить" позволяет пользователю изменять запись из источника данных. Когда пользователь нажимает кнопку "Изменить" для определенной записи, эта кнопка "Изменить" заменяется кнопкой "Обновить" и кнопкой "Отмена". Все остальные кнопки команд также скрыты.
ShowInsertButton Отображает или скрывает кнопку "Создать" в CommandField поле. Кнопка "Создать" позволяет пользователю вставлять новую запись в источник данных. Когда пользователь нажимает кнопку "Создать", он заменяется кнопкой "Вставить" и кнопкой "Отмена". Все остальные кнопки команд также скрыты. Примечание: Это свойство применяется только к элементам управления с привязкой к данным, поддерживающим операции вставки, такие как DetailsView элемент управления.
ShowSelectButton Отображает или скрывает кнопку "Выбрать" в поле для каждой записи в элементе управления с привязкой CommandField к данным. Кнопка "Выбрать" позволяет пользователю выбрать запись в элементе управления с привязкой к данным.

Кроме того, кнопка "Отмена", отображаемая при изменении или вставке записи, может отображаться или скрыта, задав ShowCancelButton свойство.

Замечание

Если элемент управления с привязкой к данным используется в сочетании с элементом управления источниками данных (например SqlDataSource , элементом управления), элемент управления привязкой к данным может воспользоваться преимуществами возможностей системы управления источниками данных и обеспечить автоматическое удаление, обновление и вставку функций. Для других источников данных необходимо предоставить подпрограммы для выполнения этих операций во время соответствующих событий для элемента управления с привязкой к данным.

Поле CommandField отображается по-разному в зависимости от элемента управления, привязанного к данным, в котором он используется. Например, элемент GridView управления отображает CommandField поле в виде столбца, а DetailsView элемент управления отображает его в виде строки.

Чтобы указать тип отображаемой кнопки, используйте ButtonType свойство. ButtonType Если для свойства задано ButtonType.Button значение или ButtonType.Linkможно указать текст, отображаемый для кнопок, задав свойства, показанные в следующей таблице.

Недвижимость Описание
CancelText Заголовок для кнопки "Отмена".
DeleteText Заголовок кнопки "Удалить".
EditText Подпись для кнопки "Изменить".
InsertText Подпись для кнопки "Вставка". Примечание: Это свойство применяется только к элементам управления с привязкой к данным, поддерживающим операции вставки, такие как DetailsView элемент управления.
NewText Подпись для кнопки "Создать". Примечание: Это свойство применяется только к элементам управления с привязкой к данным, поддерживающим операции вставки, такие как DetailsView элемент управления.
SelectText Заголовок для кнопки "Выбрать".
UpdateText Заголовок кнопки "Обновить".

Вместо отображения кнопки команды или кнопки ссылки можно отобразить кнопку изображения, задав ButtonType свойство ButtonType.Image и установив свойства, показанные в следующей таблице.

Недвижимость Описание
CancelImageUrl Изображение, отображаемое для кнопки "Отмена"
DeleteImageUrl Изображение, отображаемое для кнопки "Удалить".
EditImageUrl Изображение, отображаемое для кнопки "Изменить".
InsertText Изображение, отображаемое для кнопки "Вставка". Примечание: Это свойство применяется только к элементам управления с привязкой к данным, поддерживающим операции вставки, такие как DetailsView элемент управления.
NewImageUrl Изображение, отображаемое для кнопки "Создать". Примечание: Это свойство применяется только к элементам управления с привязкой к данным, поддерживающим операции вставки, такие как DetailsView элемент управления.
SelectImageUrl Изображение, отображаемое для кнопки "Выбрать".
UpdateImageUrl Изображение, отображаемое для кнопки "Обновить".

По умолчанию, когда пользователь нажимает кнопку в CommandField поле, проверка выполняется на всех элементах управления проверки на странице. Чтобы предотвратить проверку при нажатии кнопки, задайте CausesValidation для свойства значение false.

Вы можете скрыть CommandField поле в элементе управления, привязанном к данным, задав Visible для свойства значение false.

Поле CommandField позволяет настроить его разделы верхнего и нижнего колонтитулов. Чтобы отобразить заголовок в разделе верхнего или нижнего колонтитулов, задайте HeaderTextFooterText свойство или свойство соответственно. Вместо отображения текста в разделе заголовка можно отобразить изображение, задав HeaderImageUrl свойство. Чтобы скрыть раздел заголовка в объекте CommandField , задайте ShowHeader для свойства значение false.

Замечание

Некоторые элементы управления с привязкой к данным (например GridView , элемент управления) могут отображать или скрывать только весь раздел заголовка элемента управления. Эти элементы управления, привязанные к данным, не поддерживают ShowHeader свойство для отдельного поля кнопки. Чтобы отобразить или скрыть весь раздел заголовка элемента управления с привязкой к данным (при наличии), используйте свойство элемента управления ShowHeader .

Вы также можете настроить внешний вид объекта (цвет шрифта CommandField , цвет фона и т. д.), задав свойства стиля для различных частей поля. В следующей таблице перечислены различные свойства стиля.

Свойство Style Описание
ControlStyle Параметры стиля для дочерних элементов управления CommandField веб-сервера объекта.
FooterStyle Параметры стиля для нижнего CommandField колонтитула объекта.
HeaderStyle Параметры стиля для раздела заголовка CommandField объекта.
ItemStyle Параметры стиля для элементов данных в объекте CommandField .

Конструкторы

Имя Описание
CommandField()

Инициализирует новый экземпляр класса CommandField.

Свойства

Имя Описание
AccessibleHeaderText

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

(Унаследовано от DataControlField)
ButtonType

Возвращает или задает тип кнопки для отображения в поле кнопки.

(Унаследовано от ButtonFieldBase)
CancelImageUrl

Возвращает или задает URL-адрес изображения, отображаемого для кнопки "Отмена" в CommandField поле.

CancelText

Возвращает или задает заголовок для кнопки "Отмена", отображаемой CommandField в поле.

CausesValidation

Возвращает или задает значение, указывающее, выполняется ли проверка при нажатии пользователем CommandField кнопки в поле.

Control

Возвращает ссылку на элемент управления данными, DataControlField с которым связан объект.

(Унаследовано от DataControlField)
ControlStyle

Возвращает стиль всех элементов управления веб-сервера, содержащихся в объекте DataControlField .

(Унаследовано от DataControlField)
DeleteImageUrl

Возвращает или задает URL-адрес изображения, отображаемого для кнопки "Удалить" в CommandField поле.

DeleteText

Возвращает или задает заголовок для кнопки "Удалить" в CommandField поле.

DesignMode

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

(Унаследовано от DataControlField)
EditImageUrl

Возвращает или задает URL-адрес изображения, отображаемого для кнопки "Изменить" в CommandField поле.

EditText

Возвращает или задает заголовок для кнопки "Изменить" в CommandField поле.

FooterStyle

Возвращает или задает стиль нижнего колонтитула поля управления данными.

(Унаследовано от DataControlField)
FooterText

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

(Унаследовано от DataControlField)
HeaderImageUrl

Возвращает или задает URL-адрес изображения, отображаемого в элементе заголовка поля элемента управления данными.

(Унаследовано от DataControlField)
HeaderStyle

Возвращает или задает стиль заголовка поля управления данными.

(Унаследовано от DataControlField)
HeaderText

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

(Унаследовано от DataControlField)
InsertImageUrl

Возвращает или задает URL-адрес изображения, отображаемого для кнопки "Вставка" в CommandField поле.

InsertText

Возвращает или задает заголовок для кнопки "Вставка" в CommandField поле.

InsertVisible

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

(Унаследовано от DataControlField)
IsTrackingViewState

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

(Унаследовано от DataControlField)
ItemStyle

Возвращает стиль любого текстового содержимого, отображаемого полем управления данными.

(Унаследовано от DataControlField)
NewImageUrl

Возвращает или задает URL-адрес изображения, отображаемого для кнопки "Создать" в CommandField поле.

NewText

Возвращает или задает заголовок для кнопки "Создать" в CommandField поле.

SelectImageUrl

Возвращает или задает URL-адрес изображения, отображаемого для кнопки "Выбрать" в CommandField поле.

SelectText

Возвращает или задает заголовок для кнопки "Выбрать" в CommandField поле.

ShowCancelButton

Возвращает или задает значение, указывающее, отображается ли кнопка "Отмена" в CommandField поле.

ShowDeleteButton

Возвращает или задает значение, указывающее, отображается ли кнопка "Удалить" в CommandField поле.

ShowEditButton

Возвращает или задает значение, указывающее, отображается ли кнопка "Изменить" в CommandField поле.

ShowHeader

Возвращает или задает значение, указывающее, отображается ли раздел заголовка в объекте ButtonFieldBase .

(Унаследовано от ButtonFieldBase)
ShowInsertButton

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

ShowSelectButton

Возвращает или задает значение, указывающее, отображается ли кнопка "Выбрать" в CommandField поле.

SortExpression

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

(Унаследовано от DataControlField)
UpdateImageUrl

Возвращает или задает URL-адрес изображения, отображаемого для кнопки "Обновить" в CommandField поле.

UpdateText

Возвращает или задает заголовок для кнопки "Обновить" в CommandField поле.

ValidateRequestMode

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

(Унаследовано от DataControlField)
ValidationGroup

Возвращает или задает имя группы элементов управления проверки для проверки нажатия кнопки в объекте ButtonFieldBase .

(Унаследовано от ButtonFieldBase)
ViewState

Получает словарь сведений о состоянии, позволяющий сохранять и восстанавливать состояние DataControlField представления объекта в нескольких запросах на одну и ту же страницу.

(Унаследовано от DataControlField)
Visible

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

(Унаследовано от DataControlField)

Методы

Имя Описание
CloneField()

Создает дубликат копии текущего DataControlFieldпроизводного объекта.

(Унаследовано от DataControlField)
CopyProperties(DataControlField)

Копирует свойства текущего CommandField объекта в указанный DataControlField объект.

CreateField()

Создает пустой объект CommandField.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
ExtractValuesFromCell(IOrderedDictionary, DataControlFieldCell, DataControlRowState, Boolean)

Извлекает значение поля управления данными из текущей ячейки таблицы и добавляет значение в указанную IDictionary коллекцию.

(Унаследовано от DataControlField)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
Initialize(Boolean, Control)

Выполняет инициализацию базового экземпляра для поля управления данными.

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

Определяет, поддерживают ли элементы управления, содержащиеся в CommandField обратных вызовах объекта.

Явные реализации интерфейса

Имя Описание
IDataSourceViewSchemaAccessor.DataSourceViewSchema

Возвращает или задает схему, связанную с этим DataControlField объектом.

(Унаследовано от DataControlField)
IStateManager.IsTrackingViewState

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

(Унаследовано от DataControlField)
IStateManager.LoadViewState(Object)

Восстанавливает ранее сохраненное состояние представления поля управления данными.

(Унаследовано от DataControlField)
IStateManager.SaveViewState()

Сохраняет изменения, внесенные DataControlField в состояние представления с момента публикации страницы на сервер.

(Унаследовано от DataControlField)
IStateManager.TrackViewState()

Позволяет DataControlField объекту отслеживать изменения состояния представления, чтобы они могли храниться в свойстве элемента управления ViewState и сохраняться в запросах на одну и ту же страницу.

(Унаследовано от DataControlField)

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

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