Introducing DotNetFunda.com on mobile http://m.dotnetfunda.com ! Be with DotNetFunda.com on the go !
Go to DotNetFunda.com
Twitter TwitterLinkedIn
YouTubeGoogle
 Online : 29903 |  Welcome, Guest!   Register  Login
Home > Articles > ASP.NET > How to get the Values of Selected Row from a Gridview using ASP.NET

How to get the Values of Selected Row from a Gridview using ASP.NET

Article posted by Syedshakeer on 6/29/2009 | Views: 38391 | Category: ASP.NET | Level: Intermediate red flag


In this Article you can learn how to get the values of selected row from a Gridview and display the values in textBoxes using C# code.

Selecting a Row in Gridview

Add one Gridview and bind a Data using SqlDataSource.and Add three Textboxes to display a data in Textboxes when the GridviewRow is Selected.

Ste the Gridview AutoGenerateColumns property to 'False'.

You will need to set the Bound column in order to see the text in the cells of the grid view control

<asp:GridView runat ="Server" ID="Gridview1" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" AutoGenerateSelectButton="True" OnSelectedIndexChanged="Gridview1_SelectedIndexChanged" style="z-index: 100; left: 266px; position: absolute; top: 71px" CellPadding="4" ForeColor="#333333" GridLines="None" Width="306px" Height="137px">

    <Columns >

    <asp:BoundField HeaderText ="Rowid"  DataField ="Rowid" />

    <asp:BoundField HeaderText ="Name" DataField ="Name" />

    <asp:BoundField HeaderText ="Marks" DataField ="marks" />  

    </Columns>

</asp:GridView>

 <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:shakeerConnectionString %>" SelectCommand="SELECT * FROM [emp]">

</asp:SqlDataSource>

In Gridview Properties set 'AutoGenerateSelectButton=True'.See below  image of Gridview after setting   'AutoGenerateSelectButton=True'.


See th Desing view of your Gridview.you will find a Hyperlink with a text as 'Select'

Selecting Row:

Selecting row event is fired when you make a click on the select link. If you need any particular item in that row you can easily select it using the cells property:

In Gridview Events double Click on SelectedIndexChanged Event and write the below code:

   protected void Gridview1_SelectedIndexChanged(object sender, EventArgs e)
    {
       txtrowid .Text  = Gridview1.SelectedRow.Cells[1].Text;
       txtname .Text  = Gridview1.SelectedRow.Cells[2].Text;
       txtmarks .Text  = Gridview1.SelectedRow.Cells[3].Text;

              
    }


Complete .asp source code:

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:GridView runat ="Server" ID="Gridview1" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" AutoGenerateSelectButton="True" OnSelectedIndexChanged="Gridview1_SelectedIndexChanged" style="z-index: 100; left: 266px; position: absolute; top: 71px" CellPadding="4" ForeColor="#333333" GridLines="None" Width="306px" Height="137px">
    <Columns >
    <asp:BoundField HeaderText ="Rowid"  DataField ="Rowid" />
    <asp:BoundField HeaderText ="Name" DataField ="Name" />
    <asp:BoundField HeaderText ="Marks" DataField ="marks" /> 
    </Columns>
        <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
        <SelectedRowStyle BackColor="Teal" ForeColor="Maroon" Font-Bold="True" />
        <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
        <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
        <AlternatingRowStyle BackColor="White" />
        <RowStyle BackColor="#EFF3FB" />
        <EditRowStyle BackColor="#2461BF" />
    </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:shakeerConnectionString %>"
            SelectCommand="SELECT * FROM [emp]"></asp:SqlDataSource>
        <br />
        <br />
        <asp:TextBox ID="txtrowid" runat="server" Style="z-index: 101; left: 365px; position: absolute;
            top: 251px"></asp:TextBox>
        <asp:TextBox ID="txtname" runat="server" Style="z-index: 102; left: 365px; position: absolute;
            top: 283px"></asp:TextBox>
        <asp:TextBox ID="txtmarks" runat="server" Style="z-index: 103; left: 365px; position: absolute;
            top: 315px"></asp:TextBox>
        <asp:Label ID="Label1" runat="server" Style="z-index: 107; left: 305px; position: absolute;
            top: 253px" Text="RowId"></asp:Label>
        <asp:Label ID="Label2" runat="server" Style="z-index: 105; left: 303px; position: absolute;
            top: 287px" Text="Name"></asp:Label>
        <asp:Label ID="Label3" runat="server" Style="z-index: 106; left: 306px; position: absolute;
            top: 318px" Text="Marks"></asp:Label>
  
    </div>
    </form>
</body>
</html>


In .aspx.cs code:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Gridview1_SelectedIndexChanged(object sender, EventArgs e)
    {
       txtrowid .Text  = Gridview1.SelectedRow.Cells[1].Text;
       txtname .Text  = Gridview1.SelectedRow.Cells[2].Text;
       txtmarks .Text  = Gridview1.SelectedRow.Cells[3].Text;
             
    }
}

If you like this article, subscribe to our RSS Feed. You can also subscribe via email to our Interview Questions, Codes and Forums section.

Page copy protected against web site content infringement by Copyscape
Found interesting? Add this to:



Please Sign In to vote for this post.

Experience:2 year(s)
Home page:http://www.dotnetfunda.com
Member since:Thursday, February 05, 2009
Level:Starter
Status: [Member]
Biography:Shakeer Hussain has completed his Master of Computer Applications degree from Deccan College of engg and technology of Osmania University.He is a MVM of www.dotnetspider.com.He has good experience in the areas of ASP.NET, C#.NET, VB.NET, SQL SERVER 2000/2005 and Windows Mobile. He has worked in Windows Mobile,Web Applicatin and ERP projects.
>> Write Response - Respond to this post and get points
Related Posts

In this article I will be explaining step by step building an application using MS-Charting tool(a free add-on for Visual Studio)

This Article will allow you to customise the Calendar Control in ASP.NET according to your requirements. Disabling Dates,Formating how dates Appears etc...

To generate Edit, Delete, Update and Select buttons automatically in the GridView, we can follow this approach.

This atricle explains how we can use C# and VB.NET class together in any application.

These code can convert in Hash.

More ...
About Us | Contact Us | The Team | Advertise | Software Development | Write for us | Testimonials | Privacy Policy | Terms of Use | Link Exchange | Members | Go Top
General Notice: If you found plagiarised (copied) contents on this page, please let us know the original source along with your correct email id (to communicate) for further action.
Copyright © DotNetFunda.Com. All Rights Reserved. Copying or mimicking the site design and layout is prohibited. Logos, company names used here if any are only for reference purposes and they may be respective owner's right or trademarks. | 5/28/2012 11:57:56 AM