GridViewDeletedEventHandler Делегат
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет метод, обрабатывающий RowDeleted событие GridView элемента управления.
public delegate void GridViewDeletedEventHandler(System::Object ^ sender, GridViewDeletedEventArgs ^ e);
public delegate void GridViewDeletedEventHandler(object sender, GridViewDeletedEventArgs e);
type GridViewDeletedEventHandler = delegate of obj * GridViewDeletedEventArgs -> unit
Public Delegate Sub GridViewDeletedEventHandler(sender As Object, e As GridViewDeletedEventArgs)
Параметры
- sender
- Object
Источник события.
Объект, GridViewDeletedEventArgs содержащий данные события.
Примеры
В следующем примере показано, как программно добавить GridViewDeletedEventHandler делегат в RowDeleted событие GridView элемента управления.
<%@ 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 Page_Load(Object sender, EventArgs e)
{
// Create a new GridView control.
GridView customersGridView = new GridView();
// Set the GridView control's properties.
customersGridView.ID = "CustomersGridView";
customersGridView.DataSourceID = "CustomersSqlDataSource";
customersGridView.AutoGenerateColumns = true;
customersGridView.AutoGenerateDeleteButton = true;
customersGridView.DataKeyNames = new String[1] { "CustomerID" };
// Programmatically register the event-handling method
// for the RowDeleted event of the GridView control.
customersGridView.RowDeleted += new GridViewDeletedEventHandler(this.CustomersGridView_RowDeleted);
// Add the GridView control to the Controls collection
// of the PlaceHolder control.
GridViewPlaceHolder.Controls.Add(customersGridView);
}
void CustomersGridView_RowDeleted(Object sender, GridViewDeletedEventArgs e)
{
// Display whether the delete operation succeeded.
if(e.Exception == null)
{
Message.Text = "Row deleted successfully.";
}
else
{
Message.Text = "An error occurred while attempting to deleting the row.";
e.ExceptionHandled = true;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridViewDeletedEventHandler Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridViewDeletedEventHandler Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"/>
<br/>
<asp:placeholder id="GridViewPlaceHolder"
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="CustomersSqlDataSource"
selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
deletecommand="Delete from Customers where CustomerID = @CustomerID"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server">
</asp:sqldatasource>
</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 Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' Create a new GridView control.
Dim customersGridView As New GridView()
' Set the GridView control's properties.
customersGridView.ID = "CustomersGridView"
customersGridView.DataSourceID = "CustomersSqlDataSource"
customersGridView.AutoGenerateColumns = True
customersGridView.AutoGenerateDeleteButton = True
Dim keyArray() As String = {"CustomerID"}
customersGridView.DataKeyNames = keyArray
' Programmatically register the event-handling method
' for the RowDeleted event of the GridView control.
AddHandler customersGridView.RowDeleted, AddressOf CustomersGridView_RowDeleted
' Add the GridView control to the Controls collection
' of the PlaceHolder control.
GridViewPlaceHolder.Controls.Add(customersGridView)
End Sub
Sub CustomersGridView_RowDeleted(ByVal sender As Object, ByVal e As GridViewDeletedEventArgs)
' Display whether the delete operation succeeded.
If e.Exception Is Nothing Then
Message.Text = "Row deleted successfully."
Else
Message.Text = "An error occurred while attempting to deleting the row."
e.ExceptionHandled = True
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridViewDeletedEventHandler Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridViewDeletedEventHandler Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"/>
<br/>
<asp:placeholder id="GridViewPlaceHolder"
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="CustomersSqlDataSource"
selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
deletecommand="Delete from Customers where CustomerID = @CustomerID"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
В следующем примере показано, как декларативно добавить GridViewDeletedEventHandler делегат в RowDeleted событие GridView элемента управления.
<%@ 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 CustomersGridView_RowDeleted(Object sender, GridViewDeletedEventArgs e)
{
// Display whether the delete operation succeeded.
if(e.Exception == null)
{
Message.Text = "Row deleted successfully.";
}
else
{
Message.Text = "An error occurred while attempting to delete the row.";
e.ExceptionHandled = true;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView RowDeleted Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridView RowDeleted Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"/>
<br/>
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="true"
autogeneratedeletebutton="true"
datakeynames="CustomerID"
onrowdeleted="CustomersGridView_RowDeleted"
runat="server">
</asp:gridview>
<!-- 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="CustomersSqlDataSource"
selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
deletecommand="Delete from Customers where CustomerID = @CustomerID"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server">
</asp:sqldatasource>
</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 CustomersGridView_RowDeleted(sender As Object, e As GridViewDeletedEventArgs)
' Display whether the delete operation succeeded.
If e.Exception Is Nothing Then
Message.Text = "Row deleted successfully."
Else
Message.Text = "An error occurred while attempting to delete the row."
e.ExceptionHandled = True
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView RowDeleted Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridView RowDeleted Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"/>
<br/>
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="true"
autogeneratedeletebutton="true"
datakeynames="CustomerID"
onrowdeleted="CustomersGridView_RowDeleted"
runat="server">
</asp:gridview>
<!-- 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="CustomersSqlDataSource"
selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
deletecommand="Delete from Customers where CustomerID = @CustomerID"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
Комментарии
Элемент GridView управления вызывает RowDeleted событие при нажатии кнопки "Удалить" (кнопка с его CommandName свойством "Удалить") в элементе управления, но после GridView удаления записи элементом управления. Это позволяет предоставить метод обработки событий, выполняющий пользовательскую подпрограмму, например проверку результатов операции удаления при каждом возникновении этого события.
При создании делегата GridViewDeletedEventHandler вы определите метод, который будет обрабатывать событие. Чтобы связать событие с обработчиком событий, добавьте экземпляр делегата в событие. Обработчик событий вызывается всякий раз, когда происходит событие, если вы не удалите делегат. Дополнительные сведения о делегатах обработчика событий см. в разделе "Обработка и создание событий".
Методы расширения
| Имя | Описание |
|---|---|
| GetMethodInfo(Delegate) |
Возвращает объект, представляющий метод, представленный указанным делегатом. |