Click here to Skip to main content
11,433,997 members (66,807 online)
Click here to Skip to main content

Example of gridview rowcommand on Button Click

, 30 Mar 2013 CPOL
Rate this:
Please Sign up or sign in to vote.
Example For Gridview RowCommand Event

Introduction

One of the most used controls in my projects is Gridview. Therefore, I thought of writing a tip which has been used in my projects frequently.

Background

Gridview displays the value of a data source in a table. Here, I am going to give an example of using an event called "RowCommand". The RowCommand is raised when a button, LinkButton or ImageButton is clicked in the Gridview Control.

Using the Code

The HTML part of the gridview is:

<asp:GridView ID="gridMembersList" 
AutoGenerateColumns="False" GridLines="None" 
            runat="server"  
            onrowcommand="gridMembersList_RowCommand">
        <Columns>
        <asp:TemplateField HeaderText="User Name">
        <ItemTemplate>
            <asp:Literal ID="ltrlName" runat="server" 
            Text='<%# Eval("Name") %>'></asp:Literal>
            <asp:Literal ID="ltrlSlno" runat="server" Visible="False" 
                Text='<%# Eval("Id") %>'></asp:Literal>
        </ItemTemplate>
        </asp:TemplateField>
        
        <asp:TemplateField HeaderText="View More">
        <ItemTemplate>
            <asp:Button ID="btnViewmore"  
            CommandArgument="<%# ((GridViewRow) Container).RowIndex %>
            " CommandName="More" runat="server" Text="View More" />
        </ItemTemplate>
        </asp:TemplateField> 
        </Columns>
        </asp:GridView>  

In the HTML part , I have binded the values which have to be displayed on the page.

And in the code behind, I have used an XML to load the data to the gridview. When the button is clicked, the event verifies for the command name and command argument.

And, then, I have just alerted the name of the user in this example. Changes can be made according to the requirement.

protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            string pathofxml = Server.MapPath("xml/MemberDetails.xml");
            DataSet ds = new DataSet();
            ds.ReadXml(pathofxml);
            gridMembersList.DataSource = ds;
            gridMembersList.DataBind();
        }
    } 
 protected void gridMembersList_RowCommand(object sender, GridViewCommandEventArgs e)
   {
        if (e.CommandName == "More")
        {
            int index = Convert.ToInt32(e.CommandArgument.ToString());
            Literal ltrlslno = (Literal)gridMembersList.Rows[index].FindControl("ltrlSlno");
            Literal ltrlName = (Literal)gridMembersList.Rows[index].FindControl("ltrlName");
            ScriptManager.RegisterStartupScript(this, this.GetType(), 
            "Message", "alert('" + ltrlName.Text+ "');", true);
        }
    }  

I hope this will be helpful for the beginner.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Nandakishore G N
Software Developer Canarys Automation Pvt Ltd
India India
Software Engineer in Canarys Automation Pvt Ltd, Bangalore, India.

My Blog
dotnetkraft.blogspot.in
gnnrao.blogspot.in
Follow on   Google+

Comments and Discussions

 
QuestionPossible to start with expanded view? Pin
surfdabbler19-Apr-15 20:57
membersurfdabbler19-Apr-15 20:57 
QuestionCommandArgument is incorrect Pin
docdaven18-Mar-15 16:56
memberdocdaven18-Mar-15 16:56 
AnswerRe: CommandArgument is incorrect Pin
docdaven18-Mar-15 16:59
memberdocdaven18-Mar-15 16:59 
GeneralMy vote of 5 Pin
Pradeepkumar patil sonu3-Mar-15 1:20
memberPradeepkumar patil sonu3-Mar-15 1:20 
QuestionThanks for this line of code Pin
codeproject_sud5-Jan-15 0:53
membercodeproject_sud5-Jan-15 0:53 
AnswerRe: Thanks for this line of code Pin
Nandakishore G N5-Jan-15 20:00
professionalNandakishore G N5-Jan-15 20:00 
GeneralMy vote of 4 Pin
CityHunter8912-May-14 22:08
memberCityHunter8912-May-14 22:08 
QuestionRe: Pin
ethn11-Mar-14 9:39
memberethn11-Mar-14 9:39 
GeneralMy vote of 5 Pin
Debopam Pal19-Nov-13 14:03
memberDebopam Pal19-Nov-13 14:03 
GeneralRe: My vote of 5 Pin
Nandakishorerao19-Nov-13 20:01
professionalNandakishorerao19-Nov-13 20:01 
Questionwith more buttons ? Pin
Member 1036091225-Oct-13 13:55
memberMember 1036091225-Oct-13 13:55 
AnswerRe: with more buttons ? Pin
Nandakishorerao27-Oct-13 20:39
professionalNandakishorerao27-Oct-13 20:39 
QuestionVery nice one Pin
Member 433445817-Oct-13 8:49
memberMember 433445817-Oct-13 8:49 
AnswerRe: Very nice one Pin
Nandakishorerao18-Oct-13 0:20
professionalNandakishorerao18-Oct-13 0:20 
GeneralMy vote of 4 Pin
Alireza_136229-Jul-13 22:59
memberAlireza_136229-Jul-13 22:59 
GeneralRe: My vote of 4 Pin
Nandakishorerao30-Jul-13 0:36
memberNandakishorerao30-Jul-13 0:36 
GeneralRe: My vote of 4 Pin
Debopam Pal19-Nov-13 13:59
memberDebopam Pal19-Nov-13 13:59 
GeneralRe: My vote of 4 Pin
Nandakishorerao19-Nov-13 19:03
professionalNandakishorerao19-Nov-13 19:03 
GeneralRe: My vote of 4 Pin
Debopam Pal19-Nov-13 21:42
memberDebopam Pal19-Nov-13 21:42 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web01 | 2.8.150428.2 | Last Updated 30 Mar 2013
Article Copyright 2013 by Nandakishore G N
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid