GridView.SelectedIndexChanged Event
Assembly: System.Web (in system.web.dll)
The SelectedIndexChanged event is raised when a row's Select button is clicked, but after the GridView control handles the select operation. This allows you to provide an event-handling method that performs a custom routine, such as updating a status label with the currently selected row, whenever this event occurs.
For more information about handling events, see Consuming Events.
| Topic | Location |
|---|---|
| Walkthrough: Creating a Web Page to Display XML Data | Building ASP .NET Web Applications in Visual Studio |
| Walkthrough: Displaying an XML Document in a Web Forms Page Using Transformations | Building ASP .NET Web Applications in Visual Studio |
The following code example demonstrates how to use the SelectedIndexChanged event to display the name of the customer in the selected row of the GridView control.
<%@ Page language="C#" %> <script runat="server"> void CustomersGridView_SelectedIndexChanged(Object sender, EventArgs e) { // Get the currently selected row using the SelectedRow property. GridViewRow row = CustomersGridView.SelectedRow; // Display the company name from the selected row. // In this example, the third column (index 2) contains // the company name. Message.Text = "You selected " + row.Cells[2].Text + "."; } void CustomersGridView_SelectedIndexChanging(Object sender, GridViewSelectEventArgs e) { // Get the currently selected row. Because the SelectedIndexChanging event // occurs before the select operation in the GridView control, the // SelectedRow property cannot be used. Instead, use the Rows collection // and the NewSelectedIndex property of the e argument passed to this // event handler. GridViewRow row = CustomersGridView.Rows[e.NewSelectedIndex]; // You can cancel the select operation by using the Cancel // property. For this example, if the user selects a customer with // the ID "ANATR", the select operation is canceled and an error message // is displayed. if (row.Cells[1].Text == "ANATR") { e.Cancel = true; Message.Text = "You cannot select " + row.Cells[2].Text + "."; } } </script> <html> <body> <form runat="server"> <h3>GridView Select Example</h3> <asp:gridview id="CustomersGridView" datasourceid="CustomersSource" autogeneratecolumns="true" autogenerateselectbutton="true" allowpaging="true" selectedindex="0" onselectedindexchanged="CustomersGridView_SelectedIndexChanged" onselectedindexchanging="CustomersGridView_SelectedIndexChanging" runat="server"> <selectedrowstyle backcolor="LightCyan" forecolor="DarkBlue" font-bold="true"/> </asp:gridview> <br/> <asp:label id="Message" forecolor="Red" 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="CustomersSource" selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]" connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>
Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.