GridView.AutoGenerateEditButton Propiedad

Definición

Obtiene o establece un valor que indica si una columna de campo CommandField con un botón Editar para cada fila de datos se agrega automáticamente a un control GridView.

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

Valor de propiedad

Boolean

Es true para agregar automáticamente una columna de campo CommandField con un botón Editar para cada fila de datos; de lo contrario, es false. De manera predeterminada, es false.

Ejemplos

En el ejemplo siguiente se muestra cómo usar la AutoGenerateEditButton propiedad para habilitar la característica de edición automática del 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>

Comentarios

Cuando un control de origen de datos que admite la actualización está enlazado a un GridView control, el GridView control puede aprovechar las funcionalidades del control de origen de datos y proporcionar funcionalidad de actualización automática.

Nota

Para que un control de origen de datos actualice los datos, debe configurarse para actualizar los datos. Para configurar un control de origen de datos para actualizar los registros, consulte la documentación del control de origen de datos específico.

Cuando la AutoGenerateEditButton propiedad se establece trueen , una columna (representada por un objeto) con un CommandField botón Editar para cada fila de datos se agrega automáticamente al GridView control . Al hacer clic en un botón Editar para una fila, esa fila se coloca en modo de edición. Cuando una fila está en modo de edición, cada campo de columna de la fila que no es de solo lectura muestra el control de entrada adecuado, como un TextBox control, para el tipo de datos del campo. Esto permite al usuario modificar el valor del campo.

Cuando se hace clic, el botón Editar también se reemplaza por un botón Actualizar y un botón Cancelar. Al hacer clic en el botón Actualizar se actualiza la fila del origen de datos con cualquier cambio de valor y se devuelve la fila para mostrar el modo. Al hacer clic en el botón Cancelar se abandonan los cambios de valor y se devuelve la fila para mostrar el modo.

Nota

Puede colocar mediante programación una fila en modo de edición estableciendo la EditIndex propiedad con el índice de la fila. Para salir mediante programación del modo de edición, establezca la EditIndex propiedad en -1.

Al usar la funcionalidad de actualización integrada, debe establecer la DataKeyNames propiedad con una lista separada por comas de nombres de campo para identificar el campo de clave principal o los campos del origen de datos; de lo contrario, la funcionalidad de actualización integrada no podrá actualizar el registro correcto. Cuando se usan columnas de campo generadas automáticamente (estableciendo la AutoGenerateColumns propiedad trueen ), el GridView control garantiza automáticamente que las columnas de campo generadas automáticamente que corresponden al campo o los campos especificados en la DataKeyNames propiedad son de solo lectura.

Puede controlar la apariencia de una fila que está en modo de edición mediante la EditRowStyle propiedad . La configuración común suele incluir un color de fondo personalizado, un color de primer plano y propiedades de fuente.

El GridView control proporciona varios eventos que puede usar para realizar una acción personalizada cuando se actualiza una fila. En la tabla siguiente se enumeran los eventos disponibles.

Evento Descripción
RowCancelingEdit Se produce cuando se hace clic en el botón Cancelar de una fila, pero antes de que el GridView control se cancele fuera del modo de edición. Este evento se usa a menudo para detener la operación de cancelación.
RowEditing Se produce cuando se hace clic en el botón Editar de una fila, pero antes de que el control GridView entre en el modo de edición. Este evento se suele usar para cancelar la operación de edición.
RowUpdated Se produce cuando se hace clic en el botón Actualizar de una fila, pero después de que el control GridView actualice la fila. Este evento se usa a menudo para comprobar los resultados de la operación de actualización.
RowUpdating Se produce cuando se hace clic en el botón Actualizar de una fila, pero antes de que el control GridView actualice la fila. Este evento se usa a menudo para cancelar la operación de actualización.

Se aplica a

Consulte también