DetailsView.AutoGenerateDeleteButton Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece un valor que indica si el control integrado para eliminar el registro actual se muestra en un control DetailsView.
public:
virtual property bool AutoGenerateDeleteButton { bool get(); void set(bool value); };
public virtual bool AutoGenerateDeleteButton { get; set; }
member this.AutoGenerateDeleteButton : bool with get, set
Public Overridable Property AutoGenerateDeleteButton As Boolean
Valor de propiedad
Es true
si se va a mostrar el control integrado para eliminar el registro actual; de lo contrario, false
. De manera predeterminada, es false
.
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar la AutoGenerateDeleteButton propiedad para mostrar el control integrado para eliminar el registro actual.
<%@ 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>DetailsView AutoGenerateDeleteButton Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView AutoGenerateDeleteButton Example</h3>
<asp:detailsview id="CustomersDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneratedeletebutton="true"
autogeneraterows="true"
allowpaging="true"
runat="server">
<headerstyle backcolor="Navy"
forecolor="White"/>
</asp:detailsview>
<!-- 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="DetailsViewSource" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode], [Country])
VALUES (@CustomerID, @CompanyName, @Address, @City,
@PostalCode, @Country)"
SelectCommand="Select [CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country] From
[Customers]">
</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>DetailsView AutoGenerateDeleteButton Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView AutoGenerateDeleteButton Example</h3>
<asp:detailsview id="CustomersDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneratedeletebutton="true"
autogeneraterows="true"
allowpaging="true"
runat="server">
<headerstyle backcolor="Navy"
forecolor="White"/>
</asp:detailsview>
<!-- 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="DetailsViewSource" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode], [Country])
VALUES (@CustomerID, @CompanyName, @Address, @City,
@PostalCode, @Country)"
SelectCommand="Select [CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country] From
[Customers]">
</asp:SqlDataSource>
</form>
</body>
</html>
Comentarios
Cuando un DetailsView control está enlazado a un objeto que hereda de DataSourceView y la CanDelete propiedad devuelve true
, el DetailsView control puede aprovechar las funcionalidades del control de origen de datos y proporcionar funcionalidad de eliminación automática.
Nota:
Para que un SqlDataSourceView objeto elimine datos, la SqlDataSource.DeleteCommand propiedad del objeto subyacente SqlDataSource debe establecerse con una instrucción de consulta delete.
Cuando la AutoGenerateDeleteButton propiedad se establece true
en , un CommandField campo de fila con un botón Eliminar se muestra automáticamente en el DetailsView control . Al hacer clic en el botón Eliminar, se quita permanentemente ese registro del origen de datos.
Nota:
También debe establecer la DataKeyNames propiedad para que funcione la característica de eliminación automática.
El DetailsView control proporciona varios eventos que puede usar para realizar una acción personalizada cuando se elimina un registro. En la tabla siguiente se enumeran los eventos disponibles.
Evento | Descripción |
---|---|
ItemDeleted | Se produce cuando se hace clic en el botón Eliminar, pero después de que el DetailsView control elimine el registro del origen de datos. Este evento se usa a menudo para comprobar los resultados de la operación de eliminación. |
ItemDeleting | Se produce cuando se hace clic en el botón Eliminar, pero antes de que el DetailsView control elimine el registro del origen de datos. Este evento se usa a menudo para cancelar la operación de eliminación. |
El valor de AutoGenerateDeleteButton se almacena en estado de vista.