Congratulations to all the winners of April 2013, they have won INR 3400 cash and INR 20147 worth prizes !
Go to DotNetFunda.com
Twitter TwitterLinkedIn
YouTubeGoogle
 Online : 13945 |  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

1 vote(s)
Rating: 5 out of 5
Article posted by Syedshakeer on 6/29/2009 | Views: 72971 | 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

To list values of all sever environment variables in one go.

Creating ASP.Net Menu Control using CSS

In this article we will take up a simple example and try to implement DI using Unity Application Blocks thus resulting in loosely coupled architecture.

This articles explains the concept of Localization, Globlization, Resources, Satelite Assembly etc for developing Multi-lingual ASP.Net.

In this article we are going to learn how to read and write multi-valued cookies in ASP.NET. Multi-valued cookies is just like a normal cookies however it gives us flexibility to store multiple data in a single cookies using subkeys.

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 find 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/19/2013 7:49:46 AM