DetailsViewDeleteEventArgs Clase
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í.
Proporciona datos para el evento ItemDeleting.
public ref class DetailsViewDeleteEventArgs : System::ComponentModel::CancelEventArgs
public class DetailsViewDeleteEventArgs : System.ComponentModel.CancelEventArgs
type DetailsViewDeleteEventArgs = class
inherit CancelEventArgs
Public Class DetailsViewDeleteEventArgs
Inherits CancelEventArgs
- Herencia
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar el DetailsViewDeleteEventArgs objeto pasado al controlador de eventos para que el ItemDeleting evento cancele una operación de eliminación.
<%@ 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 CustomerDetailsView_ItemDeleting(Object sender,
DetailsViewDeleteEventArgs e)
{
// Get customer ID and name from the Keys and Values
// properties.
String keyValue = e.Keys["CustomerID"].ToString();
String customerName = e.Values["CompanyName"].ToString();
// Cancel the delete operation if the user attempts to
// delete protected record. In this example, records
// with a customer ID that starts with with "A" cannot
// be deleted.
if (keyValue.StartsWith("A"))
{
e.Cancel = true;
MessageLabel.Text = "You cannot delete " +
customerName + ". This customer is protected.";
}
else
{
MessageLabel.Text = "Row " + e.RowIndex.ToString() +
" deleted.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewDeleteEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewDeleteEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneratedeletebutton="true"
autogeneraterows="true"
allowpaging="true"
onitemdeleting="CustomerDetailsView_ItemDeleting"
runat="server">
<fieldheaderstyle backcolor="Navy"
forecolor="White"/>
</asp:detailsview>
<asp:label id="MessageLabel"
forecolor="Red"
runat="server"/>
<!-- 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"
selectcommand="Select [CustomerID], [CompanyName], [Address],
[City], [PostalCode], [Country] From [Customers]"
deletecommand="Delete [Customers]
Where [CustomerID]=@CustomerID"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</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 CustomerDetailsView_ItemDeleting(ByVal sender As Object, _
ByVal e As DetailsViewDeleteEventArgs)
' Get customer ID and name from the Keys and Values
' properties.
Dim keyValue As String = e.Keys("CustomerID").ToString()
Dim customerName As String = e.Values("CompanyName").ToString()
' Cancel the delete operation if the user attempts to
' delete protected record. In this example, records
' with a customer ID that starts with with "A" cannot
' be deleted.
If keyValue.StartsWith("A") Then
e.Cancel = True
MessageLabel.Text = "You cannot delete " & _
customerName & ". This customer is protected."
Else
MessageLabel.Text = "Row " & e.RowIndex.ToString() & _
" deleted."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewDeleteEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewDeleteEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneratedeletebutton="true"
autogeneraterows="true"
allowpaging="true"
onitemdeleting="CustomerDetailsView_ItemDeleting"
runat="server">
<fieldheaderstyle backcolor="Navy"
forecolor="White"/>
</asp:detailsview>
<asp:label id="MessageLabel"
forecolor="Red"
runat="server"/>
<!-- 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"
selectcommand="Select [CustomerID], [CompanyName], [Address],
[City], [PostalCode], [Country] From [Customers]"
deletecommand="Delete [Customers]
Where [CustomerID]=@CustomerID"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Comentarios
El DetailsView control genera el ItemDeleting evento cuando se hace clic en un botón Eliminar (un botón con su CommandName
propiedad establecida en "Eliminar") dentro del control, pero antes de que el DetailsView control elimine el registro. Esto le permite proporcionar un controlador de eventos que realice una rutina personalizada, como comprobar un registro antes de eliminarlo, siempre que se produzca este evento.
Se pasa un DetailsViewDeletedEventArgs objeto al controlador de eventos, que permite determinar el índice del registro que se va a eliminar e indicar que se debe cancelar la operación de eliminación. Para determinar el índice de un registro, use la RowIndex propiedad . Para cancelar la operación de eliminación, establezca la Cancel propiedad true
en . También puede acceder a los campos clave y a los campos que no son clave mediante las Keys propiedades y Values , respectivamente. Estos valores son útiles si desea comprobar el registro antes de eliminarlo.
Nota
Es posible modificar los valores de campo de clave de la Keys propiedad . Si cambia estos valores, se eliminará el registro que corresponde a los nuevos valores de campo de clave.
Para obtener más información acerca de cómo controlar eventos, vea controlar y provocar eventos.
Para obtener una lista de los valores de propiedad iniciales de una instancia de clase DetailsViewDeleteEventArgs , vea el DetailsViewDeleteEventArgs constructor .
Constructores
DetailsViewDeleteEventArgs(Int32) |
Inicializa una nueva instancia de la clase DetailsViewDeleteEventArgs. |
Propiedades
Cancel |
Obtiene o establece un valor que indica si se debe cancelar el evento. (Heredado de CancelEventArgs) |
Keys |
Obtiene un diccionario ordenado de pares de nombre y valor de campo de claves que contiene los nombres y los valores de los campos de claves de los elementos eliminados. |
RowIndex |
Obtiene el índice de la fila que se va a eliminar. |
Values |
Obtiene un diccionario de los pares de nombre/valor de campos no clave para el elemento que se va a eliminar. |
Métodos
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |