ListView.UpdateItem Method
Updates the record at the specified index in the data source.
Namespace: System.Web.UI.WebControls
Assembly: System.Web.Extensions (in System.Web.Extensions.dll)
Parameters
- itemIndex
- Type: System.Int32
The index of the item to update.
- causesValidation
- Type: System.Boolean
true to perform page validation when this method is called; otherwise, false.
| Exception | Condition |
|---|---|
| InvalidOperationException | itemIndex is less than 0. -or- The DataSourceView object that is associated with the ListView control is null. |
Use the UpdateItem method to programmatically update the record at the specified index in the data source. You typically use this method when you want to update a record from outside the ListView control, such as from a different control on the page.
Note |
|---|
This method can be called only for an item that contains a two-way data-bound input control. For more information about two-way binding expressions, see Binding to Databases. |
To specify whether page validation is performed before the update operation, use the causesValidation parameter.
This method raises the ItemUpdated and ItemUpdating events.
The following example shows how to use the UpdateItem method to programmatically update a ListView item in the data source.
<%@ 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"> protected void PreferredCheckBox_CheckedChanged(object sender, EventArgs e) { // Gets the CheckBox object that fired the event. CheckBox chkBox = (CheckBox) sender; // Gets the item that contains the CheckBox object. ListViewDataItem item = (ListViewDataItem) chkBox.Parent.Parent; // Update the database with the changes. VendorsListView.UpdateItem(item.DisplayIndex, false); } </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server"> <title>ListView UpdateItem Example</title> </head> <body> <form id="form1" runat="server"> <h3>ListView UpdateItem Example</h3> <asp:ListView ID="VendorsListView" DataSourceID="VendorsDataSource" DataKeyNames="VendorID" runat="server"> <LayoutTemplate> Select your preferred vendors: <ul runat="server" id="lstVendors" style="text-align:left"> <li runat="server" id="itemPlaceholder" /> </ul> <asp:DataPager ID="VendorsDataPager" runat="server" PageSize="15"> <Fields> <asp:NumericPagerField ButtonCount="10" /> </Fields> </asp:DataPager> </LayoutTemplate> <ItemTemplate> <li runat="server"> <asp:CheckBox runat="server" ID="PreferredCheckBox" AutoPostBack="True" Checked='<%# Bind("PreferredVendorStatus") %>' OnCheckedChanged="PreferredCheckBox_CheckedChanged" /> <asp:Label runat="server" ID="NameLabel" text='<%# Eval("Name") %>' /><br/> </li> </ItemTemplate> </asp:ListView> <!-- This example uses Microsoft SQL Server and connects --> <!-- to the AdventureWorks sample database. Use an ASP.NET --> <!-- expression to retrieve the connection string value --> <!-- from the Web.config file. --> <asp:SqlDataSource ID="VendorsDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:AdventureWorks_DataConnectionString %>" SelectCommand="SELECT VendorID, Name, PreferredVendorStatus FROM Purchasing.Vendor WHERE (ActiveFlag = 1)" UpdateCommand="UPDATE Purchasing.Vendor SET PreferredVendorStatus = @PreferredVendorStatus WHERE (VendorID = @VendorID)" > </asp:SqlDataSource> </form> </body> </html>
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Note