DetailsViewInsertEventArgs 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 ItemInserting.
public ref class DetailsViewInsertEventArgs : System::ComponentModel::CancelEventArgs
public class DetailsViewInsertEventArgs : System.ComponentModel.CancelEventArgs
type DetailsViewInsertEventArgs = class
inherit CancelEventArgs
Public Class DetailsViewInsertEventArgs
Inherits CancelEventArgs
- Herencia
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar el DetailsViewInsertEventArgs objeto pasado al controlador de eventos para que el ItemInserting evento cancele una operación de inserció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_ItemInserting(Object sender,
DetailsViewInsertEventArgs e)
{
// Use the Values property to retrieve the key field value.
String keyValue = e.Values["CustomerID"].ToString();
// Insert the record only if the key field is four characters
// long; otherwise, cancel the insert operation.
if (keyValue.Length == 4)
{
// Change the key field value to upper case before inserting
// the record in the data source.
e.Values["CustomerID"] = keyValue.ToUpper();
MessageLabel.Text = "";
}
else
{
MessageLabel.Text = "The key field must have four digits.";
e.Cancel = true;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewInsertEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewInsertEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogenerateinsertbutton="true"
autogeneraterows="true"
allowpaging="true"
oniteminserting="CustomerDetailsView_ItemInserting"
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]"
insertcommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode],
[Country]) VALUES (@CustomerID, @CompanyName, @Address,
@City, @PostalCode, @Country)"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
<%@ Page language="VB" autoeventwireup="false" %>
<!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_ItemInserting(ByVal sender As Object, _
ByVal e As DetailsViewInsertEventArgs) _
Handles CustomerDetailsView.ItemInserting
' Use the Values property to retrieve the key field value.
Dim keyValue As String = e.Values("CustomerID").ToString()
' Insert the record only if the key field is four characters
' long; otherwise, cancel the insert operation.
If keyValue.Length = 4 Then
' Change the key field value to upper case before inserting
' the record in the data source.
e.Values("CustomerID") = keyValue.ToUpper()
MessageLabel.Text = ""
Else
MessageLabel.Text = "The key field must have four digits."
e.Cancel = True
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewInsertEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewInsertEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogenerateinsertbutton="true"
autogeneraterows="true"
allowpaging="true"
oniteminserting="CustomerDetailsView_ItemInserting"
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]"
insertcommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode],
[Country]) VALUES (@CustomerID, @CompanyName, @Address,
@City, @PostalCode, @Country)"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Comentarios
El DetailsView control genera el ItemInserting evento cuando se hace clic en un botón Insertar (un botón con su CommandName
propiedad establecida en "Insertar") dentro del control, pero antes de que el DetailsView control inserte el registro. Esto permite proporcionar un controlador de eventos que realice una rutina personalizada, como codificar HTML los valores de un registro antes de insertarlo en el origen de datos, siempre que se produzca este evento.
Se pasa un DetailsViewInsertEventArgs objeto al controlador de eventos, que permite determinar el valor de un argumento de comando opcional enviado al DetailsView control e indicar que se debe cancelar la operación de inserción. Para determinar el valor del argumento command, use la CommandArgument propiedad . Para cancelar la operación de inserción, establezca la Cancel propiedad true
en . También puede leer o modificar los valores de campo del nuevo registro mediante la Values propiedad .
Para obtener más información acerca de cómo controlar eventos, vea controlar y provocar eventos.
Para obtener una lista con los valores de propiedad iniciales de una instancia de la clase DetailsViewInsertEventArgs, vea el constructor DetailsViewInsertEventArgs.
Constructores
DetailsViewInsertEventArgs(Object) |
Inicializa una nueva instancia de la clase DetailsViewInsertEventArgs. |
Propiedades
Cancel |
Obtiene o establece un valor que indica si se debe cancelar el evento. (Heredado de CancelEventArgs) |
CommandArgument |
Obtiene el argumento de comando para la operación de inserción pasada al control DetailsView. |
Values |
Obtiene un diccionario que contiene los pares de nombre y valor de campo del registro que se va a insertar. |
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) |