Click here to Skip to main content
Rate this: bad
Please Sign up or sign in to vote.
See more: C# ASP.NET
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
            if (e.Row.RowType == DataControlRowType.DataRow)
                var firstCell = e.Row.Cells[4];
                Button btn_chk = new Button();
                btn_chk.Text = firstCell.Text;
                btn_chk.CommandName = "btn_chk";
                //firstCell.Controls.Add(new HyperLink { NavigateUrl = "Default.aspx?Search="+firstCell.Text+"|"+e.Row.Cells[3].Text, Text= firstCell.Text });
        protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
I am able to add a button in RowDataBound event but not in RowCreated event.
Actual Problem:Data is binded to grid only first time of page load.
When the button is added on RowDataBound then on click of that button, the control doesn't render on consequent postbacks
protected void Page_Load(object sender, EventArgs e)
            if (!IsPostBack)
                List<string> years = new List<string>();
                for (int i = 0; i > -6; i--)
                drpYear.DataSource = years;
                DataSet dt = GetExistingRecords();
                GridView1.DataSource = dt;
So tell me a way to add controls to a grid in code behind(i don't want to use Template fields)
Which will be rendered even on the second postback();
Posted 1-Jul-13 7:40am
Edited 1-Jul-13 18:59pm

1 solution

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

Advertise | Privacy | Mobile
Web02 | 2.8.150129.1 | Last Updated 13 Jul 2013
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100