GridViewUpdatedEventHandler Delegát
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje metodu, která zpracovává RowUpdated událost GridView ovládacího prvku.
public delegate void GridViewUpdatedEventHandler(System::Object ^ sender, GridViewUpdatedEventArgs ^ e);
public delegate void GridViewUpdatedEventHandler(object sender, GridViewUpdatedEventArgs e);
type GridViewUpdatedEventHandler = delegate of obj * GridViewUpdatedEventArgs -> unit
Public Delegate Sub GridViewUpdatedEventHandler(sender As Object, e As GridViewUpdatedEventArgs)
Parametry
- sender
- Object
Zdroj události
A GridViewUpdatedEventArgs obsahující data události.
Příklady
Následující příklad ukazuje, jak programově přidat GridViewUpdatedEventHandler delegáta na RowUpdated událost GridView ovládacího prvku.
<%@ 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.AutoGenerateEditButton = true;
customersGridView.AllowPaging = true;
customersGridView.DataKeyNames = new String[1] { "CustomerID" };
// Programmatically register the event-handling method
// for the RowDeleted event of the GridView control.
customersGridView.RowUpdated += new GridViewUpdatedEventHandler(this.CustomersGridView_RowUpdated);
customersGridView.RowCancelingEdit += new GridViewCancelEditEventHandler(this.CustomersGridView_RowCancelingEdit);
customersGridView.RowEditing += new GridViewEditEventHandler(this.CustomersGridView_RowEditing);
// Add the GridView control to the Controls collection
// of the PlaceHolder control.
GridViewPlaceHolder.Controls.Add(customersGridView);
}
void CustomersGridView_RowUpdated(Object sender, GridViewUpdatedEventArgs e)
{
// Indicate whether the update operation succeeded.
if(e.Exception == null)
{
Message.Text = "Row updated successfully.";
}
else
{
e.ExceptionHandled = true;
Message.Text = "An error occurred while attempting to update the row.";
}
}
void CustomersGridView_RowCancelingEdit(Object sender, GridViewCancelEditEventArgs e)
{
// The update operation was canceled. Clear the message label.
Message.Text = "";
}
void CustomersGridView_RowEditing(Object sender, GridViewEditEventArgs e)
{
// The GridView control is entering edit mode. Clear the message label.
Message.Text = "";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridViewUpdatedEventHandler Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridViewUpdatedEventHandler 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]"
updatecommand="Update Customers SET CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country 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.AutoGenerateEditButton = True
customersGridView.AllowPaging = 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.RowUpdated, AddressOf CustomersGridView_RowUpdated
AddHandler customersGridView.RowCancelingEdit, AddressOf CustomersGridView_RowCancelingEdit
AddHandler customersGridView.RowEditing, AddressOf CustomersGridView_RowEditing
' Add the GridView control to the Controls collection
' of the PlaceHolder control.
GridViewPlaceHolder.Controls.Add(customersGridView)
End Sub
Sub CustomersGridView_RowUpdated(ByVal sender As Object, ByVal e As GridViewUpdatedEventArgs)
' Indicate whether the update operation succeeded.
If e.Exception Is Nothing Then
Message.Text = "Row updated successfully."
Else
e.ExceptionHandled = True
Message.Text = "An error occurred while attempting to update the row."
End If
End Sub
Sub CustomersGridView_RowCancelingEdit(ByVal sender As Object, ByVal e As GridViewCancelEditEventArgs)
' The update operation was canceled. Clear the message label.
Message.Text = ""
End Sub
Sub CustomersGridView_RowEditing(ByVal sender As Object, ByVal e As GridViewEditEventArgs)
' The GridView control is entering edit mode. Clear the message label.
Message.Text = ""
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView GridViewUpdatedEventHandler Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridView GridViewUpdatedEventHandler 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]"
updatecommand="Update Customers SET CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country WHERE (CustomerID = @CustomerID)"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
Následující příklad ukazuje, jak deklarativní přidat GridViewUpdatedEventHandler delegáta na RowUpdated událost GridView ovládacího prvku.
<%@ 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_RowUpdated(Object sender, GridViewUpdatedEventArgs e)
{
// Indicate whether the update operation succeeded.
if(e.Exception == null)
{
Message.Text = "Row updated successfully.";
}
else
{
e.ExceptionHandled = true;
Message.Text = "An error occurred while attempting to update the row.";
}
}
void CustomersGridView_RowCancelingEdit(Object sender, GridViewCancelEditEventArgs e)
{
// The update operation was canceled. Clear the message label.
Message.Text = "";
}
void CustomersGridView_RowEditing(Object sender, GridViewEditEventArgs e)
{
// The GridView control is entering edit mode. Clear the message label.
Message.Text = "";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView RowUpdated Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridView RowUpdated Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"/>
<br/>
<!-- The GridView control automatically sets the columns -->
<!-- specified in the datakeynames property as read-only. -->
<!-- No input controls are rendered for these columns in -->
<!-- edit mode. -->
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="true"
autogenerateeditbutton="true"
allowpaging="true"
datakeynames="CustomerID"
onrowupdated="CustomersGridView_RowUpdated"
onrowcancelingedit="CustomersGridView_RowCancelingEdit"
onrowediting="CustomersGridView_RowEditing"
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]"
updatecommand="Update Customers SET CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country 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_RowUpdated(ByVal sender As Object, ByVal e As GridViewUpdatedEventArgs)
' Indicate whether the update operation succeeded.
If e.Exception Is Nothing Then
Message.Text = "Row updated successfully."
Else
e.ExceptionHandled = True
Message.Text = "An error occurred while attempting to update the row."
End If
End Sub
Sub CustomersGridView_RowCancelingEdit(ByVal sender As Object, ByVal e As GridViewCancelEditEventArgs)
' The update operation was canceled. Clear the message label.
Message.Text = ""
End Sub
Sub CustomersGridView_RowEditing(ByVal sender As Object, ByVal e As GridViewEditEventArgs)
' The GridView control is entering edit mode. Clear the message label.
Message.Text = ""
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView RowUpdated Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridView RowUpdated Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"/>
<br/>
<!-- The GridView control automatically sets the columns -->
<!-- specified in the datakeynames property as read-only. -->
<!-- No input controls are rendered for these columns in -->
<!-- edit mode. -->
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="true"
autogenerateeditbutton="true"
allowpaging="true"
datakeynames="CustomerID"
onrowupdated="CustomersGridView_RowUpdated"
onrowcancelingedit="CustomersGridView_RowCancelingEdit"
onrowediting="CustomersGridView_RowEditing"
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]"
updatecommand="Update Customers SET CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country WHERE (CustomerID = @CustomerID)"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
Poznámky
Ovládací GridView prvek vyvolá RowUpdated událost, když se v ovládacím prvku klikne tlačítko Aktualizovat (tlačítko s CommandName vlastností nastavenou na "Aktualizovat") v ovládacím prvku, ale po aktualizaci záznamu GridView . To vám umožní poskytnout metodu zpracování událostí, která provádí vlastní rutinu, jako je například kontrola výsledků operace aktualizace, kdykoli dojde k této události.
Při vytváření delegáta GridViewUpdatedEventHandler identifikujete metodu, která bude zpracovávat událost. Pokud chcete událost přidružit k obslužné rutině události, přidejte do události instanci delegáta. Obslužná rutina události se volá při každém výskytu události, pokud delegáta neodeberete. Další informace o delegátech obslužné rutiny událostí naleznete v tématu Zpracování a vyvolávání událostí.
Metody rozšíření
| Name | Description |
|---|---|
| GetMethodInfo(Delegate) |
Získá objekt, který představuje metodu reprezentovanou zadaným delegátem. |