FormView.ItemDeleted Événement
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Se produit lorsqu'un clic est effectué sur un bouton Supprimer d'un contrôle FormView, mais après l'opération de suppression.
public:
event System::Web::UI::WebControls::FormViewDeletedEventHandler ^ ItemDeleted;
public event System.Web.UI.WebControls.FormViewDeletedEventHandler ItemDeleted;
member this.ItemDeleted : System.Web.UI.WebControls.FormViewDeletedEventHandler
Public Custom Event ItemDeleted As FormViewDeletedEventHandler
Type d'événement
Exemples
L’exemple suivant montre comment utiliser l’événement ItemDeleted pour déterminer si une exception s’est produite lors d’une opération de suppression.
<%@ 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 EmployeeFormView_ItemDeleted(Object sender, FormViewDeletedEventArgs e)
{
// Use the Exception property to determine whether an exception
// occurred during the delete operation.
if (e.Exception == null)
{
// Use the AffectedRows property to determine whether the
// record was deleted. Sometimes an error might occur that
// does not raise an exception, but prevents the delete
// operation from completing.
if (e.AffectedRows == 1)
{
MessageLabel.Text = "Record deleted successfully.";
}
else
{
MessageLabel.Text = "An error occurred during the delete operation.";
}
}
else
{
// Insert the code to handle the exception.
MessageLabel.Text = e.Exception.Message;
// Use the ExceptionHandled property to indicate that the
// exception has already been handled.
e.ExceptionHandled = true;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FormViewDeletedEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>FormViewDeletedEventArgs Example</h3>
<asp:formview id="EmployeeFormView"
datasourceid="EmployeeSource"
allowpaging="true"
datakeynames="EmployeeID"
onitemdeleted="EmployeeFormView_ItemDeleted"
runat="server">
<itemtemplate>
<table>
<tr>
<td>
<asp:image id="EmployeeImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td>
<h3><%# Eval("FirstName") %> <%# Eval("LastName") %></h3>
<%# Eval("Title") %>
</td>
</tr>
<tr>
<td colspan="2">
<asp:button id="DeleteButton"
text="Delete Record"
commandname="Delete"
runat="server" />
</td>
</tr>
</table>
</itemtemplate>
</asp:formview>
<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="EmployeeSource"
selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
deletecommand="Delete [Employees] Where [EmployeeID]=@EmployeeID"
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 EmployeeFormView_ItemDeleted(ByVal sender As Object, ByVal e As FormViewDeletedEventArgs) Handles EmployeeFormView.ItemDeleted
' Use the Exception property to determine whether an exception
' occurred during the delete operation.
If e.Exception Is Nothing Then
' Use the AffectedRows property to determine whether the
' record was deleted. Sometimes an error might occur that
' does not raise an exception, but prevents the delete
' operation from completing.
If e.AffectedRows = 1 Then
MessageLabel.Text = "Record deleted successfully."
Else
MessageLabel.Text = "An error occurred during the delete operation."
End If
Else
' Insert the code to handle the exception.
MessageLabel.Text = e.Exception.Message
' Use the ExceptionHandled property to indicate that the
' exception has already been handled.
e.ExceptionHandled = True
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FormViewDeletedEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>FormViewDeletedEventArgs Example</h3>
<asp:formview id="EmployeeFormView"
datasourceid="EmployeeSource"
allowpaging="true"
datakeynames="EmployeeID"
runat="server">
<itemtemplate>
<table>
<tr>
<td>
<asp:image id="EmployeeImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td>
<h3><%# Eval("FirstName") %> <%# Eval("LastName") %></h3>
<%# Eval("Title") %>
</td>
</tr>
<tr>
<td colspan="2">
<asp:button id="DeleteButton"
text="Delete Record"
commandname="Delete"
runat="server" />
</td>
</tr>
</table>
</itemtemplate>
</asp:formview>
<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="EmployeeSource"
selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
deletecommand="Delete [Employees] Where [EmployeeID]=@EmployeeID"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Remarques
Le FormView contrôle déclenche l’événement ItemDeleted lorsqu’un bouton Supprimer (un bouton dont CommandName
la propriété est définie sur « Supprimer ») dans le contrôle est cliqué, mais une fois que le FormView contrôle a supprimé l’enregistrement. Cela vous permet de fournir une méthode de gestion des événements qui effectue une routine personnalisée, telle que la vérification des résultats d’une opération de suppression, chaque fois que cet événement se produit.
Un FormViewDeletedEventArgs objet est passé à la méthode de gestion des événements, ce qui vous permet de déterminer le nombre d’enregistrements affectés et les exceptions qui ont pu se produire. Pour déterminer le nombre d’enregistrements affectés par l’opération de suppression, utilisez la AffectedRows propriété . Utilisez la Exception propriété pour déterminer si des exceptions se sont produites. Vous pouvez également indiquer si l’exception a été gérée dans la méthode de gestion des événements en définissant la ExceptionHandled propriété . Si vous souhaitez accéder aux paires nom/valeur des champs de clé et des champs non clés de l’enregistrement supprimé, utilisez les Keys propriétés et Values , respectivement.
Pour plus d’informations sur la façon de gérer les événements, consultez gestion et déclenchement d’événements.