Click here to Skip to main content
15,909,530 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
C#
int rowIndex = 0;
                for (int i = 1; i <= dt.Tables[1].Rows.Count; i++)
                {
                    System.Web.UI.WebControls.TextBox combobox = (System.Web.UI.WebControls.TextBox)gvmonoprixmasters.Rows[rowIndex].Cells[0].FindControl("combo");
                    System.Web.UI.WebControls.TextBox sizes = (System.Web.UI.WebControls.TextBox)gvmonoprixmasters.Rows[rowIndex].Cells[1].FindControl("sizes");
                    System.Web.UI.WebControls.TextBox barcodenumber = (System.Web.UI.WebControls.TextBox)gvmonoprixmasters.Rows[rowIndex].Cells[2].FindControl("barcodeno");
                    System.Web.UI.WebControls.TextBox ratio = (System.Web.UI.WebControls.TextBox)gvmonoprixmasters.Rows[rowIndex].Cells[3].FindControl("ratio");
                    System.Web.UI.WebControls.TextBox qty = (System.Web.UI.WebControls.TextBox)gvmonoprixmasters.Rows[rowIndex].Cells[4].FindControl("qty");
                    combobox.Text = dt.Tables[1].Rows[i - 1]["Combo1"].ToString();
                    sizes.Text = dt.Tables[1].Rows[i - 1]["Sizes"].ToString();
                    barcodenumber.Text = dt.Tables[1].Rows[i - 1]["Barcode_Number"].ToString();
                    ratio.Text = dt.Tables[1].Rows[i - 1]["Ratio"].ToString();
                    qty.Text = dt.Tables[1].Rows[i - 1]["Quantity"].ToString();
                    rowIndex++;
                }


I get all the values when the loop executes 1st time(rowIndex=0) and throws error index was out of range though I increment the rowIndex. dt.Rows.Count=3.
How to retrieve all 3 values in respective textbox present in gridview....
Posted
Comments
Sriram Ramachandran 20-May-14 1:45am    
I guess I identified the problem. Initially in pageload, I bind the gridview to have 1 row with textbox for each columns in default. Since the rowcount returns 3, there is only one row present in gridview. So, code according to it...
Bh@gyesh 20-May-14 1:45am    
Hi,
Howmany rows your gridview has?
Sriram Ramachandran 20-May-14 1:48am    
In pageload, default I loaded gridview with 1 row. Then retrieved from DB, it returns 3. So gridview mismatched with rows I guess

1 solution

I solved myself ... Its working fine now...

C#
protected void LoadGridViewfromDB()
    {
        try
        {
            DataTable dtCurrentTable =(DataTable)ViewState["CurrentTable"];
            if (ViewState["CurrentTable"] != null)
            {
                DataTable dt = new DataTable();
                DataRow dr = null;
                
                    dt.Columns.Add(new DataColumn("Col1", typeof(string)));
                    dt.Columns.Add(new DataColumn("Col2", typeof(string)));
                    dt.Columns.Add(new DataColumn("Col3", typeof(string)));
                    dt.Columns.Add(new DataColumn("Col4", typeof(string)));
                    dt.Columns.Add(new DataColumn("Col5", typeof(string)));
                    for (int i = 1; i <= dtCurrentTable.Rows.Count; i++)
                    {
                    dr = dt.NewRow();
                    dr["Col1"] = string.Empty;
                    dr["Col2"] = string.Empty;
                    dr["Col3"] = string.Empty;
                    dr["Col4"] = string.Empty;
                    dr["Col5"] = string.Empty;
                    dt.Rows.Add(dr);
                }
                ViewState["CurrentTable"] = dt;
                gvmonoprixmasters.DataSource = dt;
                gvmonoprixmasters.DataBind();
            }
            else
            {
                Response.Write("ViewState is null");
            }
        }
        catch (Exception ee) { }
    }
 
Share this answer
 

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



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900