Click here to Skip to main content
Click here to Skip to main content
Go to top

Example of gridview rowcommand on Button Click

, 29 Mar 2013
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 gnnrao.blogspot.in

Comments and Discussions

 
GeneralMy vote of 4 PinmemberCityHunter8912-May-14 21:08 
QuestionRe: Pinmemberethn11-Mar-14 8:39 
GeneralMy vote of 5 PinmemberDebopam Pal19-Nov-13 13:03 
GeneralRe: My vote of 5 PinprofessionalNandakishorerao19-Nov-13 19:01 
Questionwith more buttons ? PinmemberMember 1036091225-Oct-13 12:55 
AnswerRe: with more buttons ? PinprofessionalNandakishorerao27-Oct-13 19:39 
QuestionVery nice one PinmemberMember 433445817-Oct-13 7:49 
AnswerRe: Very nice one PinprofessionalNandakishorerao17-Oct-13 23:20 
GeneralMy vote of 4 PinmemberAlireza_136229-Jul-13 21:59 
GeneralRe: My vote of 4 PinmemberNandakishorerao29-Jul-13 23:36 
GeneralRe: My vote of 4 PinmemberDebopam Pal19-Nov-13 12:59 
GeneralRe: My vote of 4 PinprofessionalNandakishorerao19-Nov-13 18:03 
GeneralRe: My vote of 4 PinmemberDebopam Pal19-Nov-13 20: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 | Mobile
Web04 | 2.8.140926.1 | Last Updated 30 Mar 2013
Article Copyright 2013 by Nandakishore G N
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid