DetailsViewInsertedEventArgs Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece dados para o evento de ItemInserted .
public ref class DetailsViewInsertedEventArgs : EventArgs
public class DetailsViewInsertedEventArgs : EventArgs
type DetailsViewInsertedEventArgs = class
inherit EventArgs
Public Class DetailsViewInsertedEventArgs
Inherits EventArgs
- Herança
Exemplos
O exemplo de código a seguir demonstra como usar o DetailsViewInsertedEventArgs objeto passado para o manipulador de eventos do ItemInserted evento para determinar se ocorreu uma exceção durante uma operação de inserção.
<%@ 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_ItemInserted(Object sender,
DetailsViewInsertedEventArgs e)
{
// Use the Exception property to determine whether an exception
// occurred during the insert operation.
if (e.Exception == null && e.AffectedRows == 1)
{
// Use the Values property to get the value entered by
// the user for the CompanyName field.
String name = e.Values["CompanyName"].ToString();
// Display a confirmation message.
MessageLabel.Text = name + " added successfully. ";
}
else
{
// Insert the code to handle the exception.
MessageLabel.Text = e.Exception.Message;
// Use the ExceptionHandled property to indicate that the
// exception is already handled.
e.ExceptionHandled = true;
// When an exception occurs, keep the DetailsView
// control in insert mode.
e.KeepInInsertMode = true;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewInsertedEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewInsertedEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogenerateinsertbutton="true"
autogeneraterows="true"
allowpaging="true"
oniteminserted="CustomerDetailsView_ItemInserted"
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_ItemInserted(ByVal sender As Object, _
ByVal e As DetailsViewInsertedEventArgs) _
Handles CustomerDetailsView.ItemInserted
' Use the Exception property to determine whether an exception
' occurred during the insert operation.
If e.Exception Is Nothing And e.AffectedRows = 1 Then
' Use the Values property to get the value entered by
' the user for the CompanyName field.
Dim name As String = e.Values("CompanyName").ToString()
' Display a confirmation message.
MessageLabel.Text = name & " added successfully. "
Else
' Insert the code to handle the exception.
MessageLabel.Text = e.Exception.Message
' Use the ExceptionHandled property to indicate that the
' exception is already handled.
e.ExceptionHandled = True
' When an exception occurs, keep the DetailsView
' control in insert mode.
e.KeepInInsertMode = True
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewInsertedEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewInsertedEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogenerateinsertbutton="true"
autogeneraterows="true"
allowpaging="true"
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>
Comentários
O DetailsView controle aciona o ItemInserted evento quando um botão Inserir (um botão com sua CommandName
propriedade definida como "Inserir") dentro do controle é clicado, mas depois que o DetailsView controle insere o registro. Isso permite que você forneça um manipulador de eventos que executa uma rotina personalizada, como verificar os resultados de uma operação de inserção, sempre que esse evento ocorrer.
Um DetailsViewInsertedEventArgs objeto é passado para o manipulador de eventos, o que permite determinar o número de registros afetados e quaisquer exceções que possam ter ocorrido. Para determinar o número de registros afetados pela operação de inserção, use a AffectedRows propriedade . Use a Exception propriedade para determinar se alguma exceção ocorreu. Você também pode indicar se a exceção foi tratada no manipulador de eventos definindo a ExceptionHandled propriedade . Se você precisar acessar os valores do registro inserido, use a Values propriedade .
Por padrão, o DetailsView controle retorna ao modo especificado pela DefaultMode propriedade após uma operação de inserção. Para manter o DetailsView controle no modo de inserção, defina a KeepInInsertMode propriedade como true
.
Para obter mais informações sobre como lidar com eventos, consulte Manipulando e gerando eventos.
Para obter uma lista de valores de propriedade iniciais para uma instância da DetailsViewDeletedEventArgs classe , consulte o DetailsViewDeletedEventArgs construtor .
Construtores
DetailsViewInsertedEventArgs(Int32, Exception) |
Inicializa uma nova instância da classe DetailsViewInsertedEventArgs. |
Propriedades
AffectedRows |
Obtém o número de linhas afetadas pela operação de inserção. |
Exception |
Obtém a exceção (se houver) gerada durante a operação de inserção. |
ExceptionHandled |
Obtém ou define um valor que indica se uma exceção gerada durante a operação de inserção foi tratada no manipulador de eventos. |
KeepInInsertMode |
Obtém ou define um valor que indica se o controle DetailsView deve permanecer no modo de inserção após uma operação de inserção. |
Values |
Obtém um dicionário que contém os pares nome-valor do campo para o registro inserido. |
Métodos
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |