This documentation is archived and is not being maintained.

GridView.Rows Property

Gets a collection of GridViewRow objects that represent the data rows in a GridView control.

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

public virtual GridViewRowCollection Rows { get; }

Property Value

Type: System.Web.UI.WebControls.GridViewRowCollection
A GridViewRowCollection that contains all the data rows in a GridView control.

The Rows property (collection) is used to store the data rows in a GridView control. The GridView control automatically populates the Rows collection by creating a GridViewRow object for each record in the data source and then adding each object to the collection. This property is commonly used to access a specific row in the control or to iterate though the entire collection of rows.


Only rows with their RowType property set to DataControlRowType.DataRow are stored in the Rows collection. The GridViewRow objects that represent the header, footer, and pager rows are not included in the collection.

The following example demonstrates how to use the Rows collection to access the row being edited in a GridView control. After a row is updated, a message is displayed to indicate that the update was successful.

<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<script runat="server">

  void CustomersGridView_RowCommand(Object sender, GridViewCommandEventArgs e)

    // Clear the message label when the user enters edit mode.
    if (e.CommandName == "Edit")
      Message.Text = "";


  void CustomersGridView_RowUpdated(Object sender, GridViewUpdatedEventArgs e)

        // The update operation was successful. Retrieve the row being edited.
        int index = CustomersGridView.EditIndex;
        GridViewRow row = CustomersGridView.Rows[index];

        // Notify the user that the update was successful.
        Message.Text = "Updated record " + row.Cells[1].Text + ".";


  void CustomersGridView_RowCancelingEdit(Object sender, GridViewCancelEditEventArgs e)

        // The update operation was canceled. Display the appropriate message.
        Message.Text = "Update operation canceled.";



<html xmlns="" >
  <head runat="server">
    <title>GridView Rows Example</title>
    <form id="form1" runat="server">

      <h3>GridView Rows Example</h3>

      <asp:label id="Message"


      <!-- 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"

      <!-- 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)"
        deletecommand="Delete from Customers where CustomerID = @CustomerID"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.