GridView.UpdateRow(Int32, Boolean) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Aggiorna il record in corrispondenza dell'indice della riga specificato utilizzando i valori dei campi della riga.
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)
Parametri
- rowIndex
- Int32
Indice della riga da aggiornare.
- causesValidation
- Boolean
true
per eseguire la convalida della pagina quando viene chiamato questo metodo, altrimenti false
.
Eccezioni
Il controllo GridView è associato a un controllo origine dati, ma l'oggetto DataSourceView associato all'origine dati è null
.
Esempio
Nell'esempio seguente viene illustrato come utilizzare il UpdateRow metodo per aggiornare a livello di codice un record in un GridView controllo .
<%@ 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>
Commenti
Utilizzare il UpdateRow metodo per aggiornare il record a livello di codice in corrispondenza dell'indice specificato nell'origine dati. Questo metodo viene comunemente usato quando è necessario aggiornare un record dall'esterno del GridView controllo, ad esempio da un controllo diverso nella pagina.
Nota
Questo metodo può essere chiamato solo per la riga attualmente in modalità di modifica o per una riga che contiene un controllo di input associato a dati bidirezionale. Per altre informazioni sulle espressioni di associazione bidirezionali, vedere Associazione a database.
Per specificare se la convalida della pagina viene eseguita prima dell'operazione di aggiornamento, usare il causesValidation
parametro . La chiamata a questo metodo genera anche gli RowUpdated eventi e RowUpdating .