GridView.UpdateRow(Int32, Boolean) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt de record bijgewerkt op de opgegeven rijindex met behulp van de veldwaarden van de rij.
public:
virtual void UpdateRow(int rowIndex, bool causesValidation);
public virtual void UpdateRow(int rowIndex, bool causesValidation);
abstract member UpdateRow : int * bool -> unit
override this.UpdateRow : int * bool -> unit
Public Overridable Sub UpdateRow (rowIndex As Integer, causesValidation As Boolean)
Parameters
- rowIndex
- Int32
De index van de rij die moet worden bijgewerkt.
- causesValidation
- Boolean
true om paginavalidatie uit te voeren wanneer deze methode wordt aangeroepen; anders, false.
Uitzonderingen
Het GridView besturingselement is gebonden aan een besturingselement voor gegevensbronnen, maar de DataSourceView gekoppelde aan de gegevensbron is null.
Voorbeelden
In het volgende voorbeeld ziet u hoe u de UpdateRow methode gebruikt om programmatisch een record in een GridView besturingselement bij te werken.
<%@ 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 UpdateRowButton_Click(Object sender, EventArgs e)
{
// Programmatically update the current record in edit mode.
CustomersGridView.UpdateRow(CustomersGridView.EditIndex, true);
}
void CustomersGridView_RowCommand(Object sender, GridViewCommandEventArgs e)
{
// Enable the UpdateRowButton button only when the GridView control
// is in edit mode.
switch (e.CommandName)
{
case "Edit":
UpdateRowButton.Enabled = true;
break;
case "Cancel":
UpdateRowButton.Enabled = false;
break;
case "Update":
UpdateRowButton.Enabled = false;
break;
default:
UpdateRowButton.Enabled = false;
break;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView UpdateRow Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridView UpdateRow Example</h3>
<asp:button id="UpdateRowButton"
text="Update Record"
enabled="false"
onclick="UpdateRowButton_Click"
runat="server"/>
<hr/>
<!-- 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"
allowpaging="true"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="true"
autogenerateeditbutton="true"
datakeynames="CustomerID"
onrowcommand="CustomersGridView_RowCommand"
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 UpdateRowButton_Click(ByVal sender As Object, ByVal e As EventArgs)
' Programmatically update the current record in edit mode.
CustomersGridView.UpdateRow(CustomersGridView.EditIndex, True)
End Sub
Sub CustomersGridView_RowCommand(ByVal sender As Object, ByVal e As GridViewCommandEventArgs)
' Enable the UpdateRowButton button only when the GridView control
' is in edit mode.
Select Case e.CommandName
Case "Edit"
UpdateRowButton.Enabled = True
Case "Cancel"
UpdateRowButton.Enabled = False
Case "Update"
UpdateRowButton.Enabled = False
Case Else
UpdateRowButton.Enabled = False
End Select
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView UpdateRow Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridView UpdateRow Example</h3>
<asp:button id="UpdateRowButton"
text="Update Record"
enabled="false"
onclick="UpdateRowButton_Click"
runat="server"/>
<hr/>
<!-- 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"
allowpaging="true"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="true"
autogenerateeditbutton="true"
datakeynames="CustomerID"
onrowcommand="CustomersGridView_RowCommand"
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>
Opmerkingen
Gebruik de UpdateRow methode om de record programmatisch bij te werken op de opgegeven index in de gegevensbron. Deze methode wordt vaak gebruikt wanneer u een record van buiten het GridView besturingselement wilt bijwerken, bijvoorbeeld vanuit een ander besturingselement op de pagina.
Note
Deze methode kan alleen worden aangeroepen voor de rij die zich momenteel in de bewerkingsmodus bevindt of voor een rij die een invoerbesturingselement in twee richtingen bevat. Zie Binding naar databases voor meer informatie over bindingsexpressies in twee richtingen.
Als u wilt opgeven of paginavalidatie vóór de updatebewerking wordt uitgevoerd, gebruikt u de causesValidation parameter. Als u deze methode aanroept RowUpdated , worden de en RowUpdating gebeurtenissen ook gegenereerd.