DetailsViewDeletedEventArgs.ExceptionHandled Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает или задает значение, определяющее, было ли обработано произошедшее во время операции удаления исключение в данном обработчике.
public:
property bool ExceptionHandled { bool get(); void set(bool value); };
public bool ExceptionHandled { get; set; }
member this.ExceptionHandled : bool with get, set
Public Property ExceptionHandled As Boolean
Значение свойства
Значение true
, если исключение обработано в обработчике событий; в противном случае — значение false
. Значение по умолчанию — false
.
Примеры
В следующем примере кода показано, как использовать ExceptionHandled свойство, чтобы указать, что исключение было обработано в обработчике событий.
<%@ 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 StoresDetailView_ItemDeleted(Object sender,
DetailsViewDeletedEventArgs 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 the numbers of
// rows affected by the delete operation.
if (e.AffectedRows == 1)
{
MessageLabel.Text = e.AffectedRows.ToString()
+ " record deleted successfully.";
}
else
{
MessageLabel.Text = e.AffectedRows.ToString()
+ " records deleted 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;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewDeletedEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewDeletedEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneratedeletebutton="true"
autogeneraterows="true"
allowpaging="true"
onitemdeleted="StoresDetailView_ItemDeleted"
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" 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 StoresDetailView_ItemDeleted(ByVal sender As Object, _
ByVal e As DetailsViewDeletedEventArgs) _
Handles CustomerDetailsView.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 the numbers of
' rows affected by the delete operation.
If e.AffectedRows = 1 Then
MessageLabel.Text = e.AffectedRows.ToString() _
& " record deleted successfully."
Else
MessageLabel.Text = e.AffectedRows.ToString() _
& " records deleted successfully."
End If
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
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewDeletedEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewDeletedEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneratedeletebutton="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]"
deletecommand="Delete [Customers]
Where [CustomerID]=@CustomerID"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Комментарии
При возникновении исключения во время операции удаления используйте ExceptionHandled свойство, чтобы указать, было ли исключение обработано в обработчике событий. Если для этого свойства задано true
значение, исключение считается обработанным и не передается дальше в стек вызовов. Если этому свойству false
присвоено значение, исключение передается следующему методу в стеке вызовов для обработки. Чтобы определить, какое исключение было создано, используйте Exception свойство.