GridView.AutoGenerateEditButton Свойство

Определение

Возвращает или задает значение, указывающее, следует ли автоматически добавлять поле столбца CommandField с кнопкой "Править" для каждой строки данных в элементе управления GridView.Gets or sets a value indicating whether a CommandField field column with an Edit button for each data row is automatically added to a GridView control.

public:
 virtual property bool AutoGenerateEditButton { bool get(); void set(bool value); };
public virtual bool AutoGenerateEditButton { get; set; }
member this.AutoGenerateEditButton : bool with get, set
Public Overridable Property AutoGenerateEditButton As Boolean

Значение свойства

Boolean

true для автоматического добавления поля столбца CommandField с кнопкой "Править" для каждой строки данных; в противном случае — false.true to automatically add a CommandField field column with an Edit button for each data row; otherwise, false. Значение по умолчанию — false.The default is false.

Примеры

В следующем примере демонстрируется использование AutoGenerateEditButton свойства для включения функции автоматического редактирования GridView элемента управления.The following example demonstrates how to use the AutoGenerateEditButton property to enable the automatic editing feature of the GridView control.

<asp:LinqDataSource ID="LinqDataSource1" runat="server" 
    ContextTypeName="AdventureWorksLTDataClassesDataContext"
    EnableDelete="True" EnableInsert="True" EnableUpdate="True" 
    TableName="SalesOrderDetails">
</asp:LinqDataSource>

<asp:GridView ID="GridView1" runat="server" 
    AutoGenerateColumns="False" 
    DataKeyNames="SalesOrderID,SalesOrderDetailID"
    DataSourceID="LinqDataSource1">
    <Columns>
        <asp:CommandField ShowDeleteButton="True" 
            ShowEditButton="True" />
        <asp:BoundField DataField="SalesOrderID" 
            HeaderText="SalesOrderID" ReadOnly="True"
            SortExpression="SalesOrderID" />
        <asp:BoundField DataField="SalesOrderDetailID" 
            HeaderText="SalesOrderDetailID" InsertVisible="False"
            ReadOnly="True" SortExpression="SalesOrderDetailID" />
        <asp:BoundField DataField="OrderQty" 
            HeaderText="OrderQty" SortExpression="OrderQty" />
        <asp:BoundField DataField="ProductID" 
            HeaderText="ProductID" SortExpression="ProductID" />
        <asp:BoundField DataField="UnitPrice" 
            HeaderText="UnitPrice" SortExpression="UnitPrice" />
        <asp:BoundField DataField="ModifiedDate" 
            HeaderText="ModifiedDate" SortExpression="ModifiedDate" />
    </Columns>
</asp:GridView>
<asp:LinqDataSource ID="LinqDataSource1" runat="server" 
    ContextTypeName="AdventureWorksLTDataClassesDataContext"
    EnableDelete="True" EnableInsert="True" EnableUpdate="True" 
    TableName="SalesOrderDetails">
</asp:LinqDataSource>

<asp:GridView ID="GridView1" runat="server" 
    AutoGenerateColumns="False" 
    DataKeyNames="SalesOrderID,SalesOrderDetailID"
    DataSourceID="LinqDataSource1">
    <Columns>
        <asp:CommandField ShowDeleteButton="True" 
            ShowEditButton="True" />
        <asp:BoundField DataField="SalesOrderID" 
            HeaderText="SalesOrderID" ReadOnly="True"
            SortExpression="SalesOrderID" />
        <asp:BoundField DataField="SalesOrderDetailID" 
            HeaderText="SalesOrderDetailID" InsertVisible="False"
            ReadOnly="True" SortExpression="SalesOrderDetailID" />
        <asp:BoundField DataField="OrderQty" 
            HeaderText="OrderQty" SortExpression="OrderQty" />
        <asp:BoundField DataField="ProductID" 
            HeaderText="ProductID" SortExpression="ProductID" />
        <asp:BoundField DataField="UnitPrice" 
            HeaderText="UnitPrice" SortExpression="UnitPrice" />
        <asp:BoundField DataField="ModifiedDate" 
            HeaderText="ModifiedDate" SortExpression="ModifiedDate" />
    </Columns>
</asp:GridView>

Комментарии

Если элемент управления источника данных, поддерживающий обновление, привязан к GridView элементу управления, этот GridView элемент управления может использовать преимущества возможностей элемента управления источниками данных и предоставлять функции автоматического обновления.When a data source control that supports updating is bound to a GridView control, the GridView control can take advantage of the data source control's capabilities and provide automatic updating functionality.

Примечание

Чтобы элемент управления источника данных обновляет данные, его необходимо настроить для обновления данных.For a data source control to update data, it must be configured to update data. Сведения о настройке элемента управления источниками данных для обновления записей см. в документации по конкретному элементу управления источниками данных.To configure a data source control to update records, see the documentation for the specific data source control.

Если AutoGenerateEditButton свойство имеет значение true , столбец (представленный CommandField объектом) с кнопкой "Изменить" для каждой строки данных автоматически добавляется в GridView элемент управления.When the AutoGenerateEditButton property is set to true, a column (represented by a CommandField object) with an Edit button for each data row is automatically added to the GridView control. Нажатие кнопки "Изменить" для строки помещает эту строку в режим редактирования.Clicking an Edit button for a row puts that row in edit mode. Когда строка находится в режиме редактирования, каждое поле столбца в строке, не предназначенной только для чтения, отображает соответствующий элемент управления вводом, например TextBox элемент управления, для типа данных поля.When a row is in edit mode, each column field in the row that is not read-only displays the appropriate input control, such as a TextBox control, for the field's data type. Это позволяет пользователю изменять значение поля.This allows the user to modify the field's value.

При нажатии кнопки изменить также заменяется кнопка Обновить и кнопка Отмена.When clicked, the Edit button is also replaced with an Update button and a Cancel button. Нажатие кнопки Обновить обновляет строку в источнике данных на любое изменение значения и возвращает строку в режим вывода.Clicking the Update button updates the row in the data source with any value changes and returns the row to display mode. Нажатие кнопки Отмена отменяет все изменения значений и возвращает строку в режим экрана.Clicking the Cancel button abandons any value changes and returns the row to display mode.

Примечание

Можно программно перевести строку в режим редактирования, задав для EditIndex свойства индекс строки.You can programmatically put a row in edit mode by setting the EditIndex property with the index of the row. Чтобы программно выйти из режима редактирования, присвойте EditIndex свойству значение-1.To programmatically exit edit mode, set the EditIndex property to -1.

При использовании встроенных функций обновления необходимо задать для DataKeyNames Свойства список имен полей с разделителями-запятыми, чтобы определить поле первичного ключа или поля источника данных; в противном случае встроенная функция обновления не сможет обновить правильную запись.When using the built-in updating functionality, you must set the DataKeyNames property with a comma-separated list of field names to identify the primary key field or fields of the data source; otherwise, the built-in updating functionality will not be able to update the correct record. При использовании автоматически создаваемых столбцов полей (путем присвоения AutoGenerateColumns свойству значения true ) GridView элемент управления автоматически гарантирует, что автоматически создаваемые столбцы полей, соответствующие полю или полям, указанным в DataKeyNames свойстве, доступны только для чтения.When using automatically generated field columns (by setting the AutoGenerateColumns property to true), the GridView control automatically ensures that the automatically generated field columns that correspond to the field or fields specified in the DataKeyNames property are read-only.

Можно управлять внешним видом строки, которая находится в режиме редактирования, с помощью EditRowStyle Свойства.You can control the appearance of a row that is in edit mode by using the EditRowStyle property. Общие параметры обычно включают пользовательский цвет фона, цвет переднего плана и свойства шрифта.Common settings usually include a custom background color, foreground color, and font properties.

GridViewЭлемент управления предоставляет несколько событий, которые можно использовать для выполнения настраиваемого действия при обновлении строки.The GridView control provides several events that you can use to perform a custom action when a row is updated. В следующей таблице перечислены доступные события.The following table lists the available events.

СобытиеEvent ОписаниеDescription
RowCancelingEdit Происходит при нажатии кнопки Cancel строки, но до того, как GridView элемент управления отменяет режим редактирования.Occurs when a row's Cancel button is clicked, but before the GridView control cancels out of edit mode. Это событие часто используется для прекращения отмены операции.This event is often used to stop the canceling operation.
RowEditing Происходит при щелчке по кнопке "Править" в строке, но до входа элемента управления в режим правки GridView.Occurs when a row's Edit button is clicked, but before the GridView control enters edit mode. Это событие часто используется для отмены операции редактирования.This event is often used to cancel the editing operation.
RowUpdated Происходит при щелчке по кнопке "Обновить" в строке, но после обновления строки элементом управления GridView.Occurs when a row's Update button is clicked, but after the GridView control updates the row. Это событие часто используется для проверки результатов операции обновления.This event is often used to check the results of the update operation.
RowUpdating Происходит при щелчке по кнопке "Обновить" в строке, но до обновления строки элементом управления GridView.Occurs when a row's Update button is clicked, but before the GridView control updates the row. Это событие часто используется для отмены операции обновления.This event is often used to cancel the updating operation.

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

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