2011-05-12 73 views
0

我在aspx頁面中使用了gridview。我正在將文本框動態添加到griview標題中。如何將值插入到網格標題中的文本框中。 我的代碼是這樣將值綁定到GridView標題中的文本框

protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.Header) 
    { 
    TextBox txtBox1 = default(TextBox); 
    for (int i = 0; i <= (e.Row.Cells.Count - 1); i++) 
     { 
     litHeader.Text = e.Row.Cells[i].Text + "<br/>"; 
     e.Row.Cells[i].Controls.Add(litHeader);         
     e.Row.Cells[i].Controls.Add(txtBox1); 
    } 
    } 
} 

我試圖綁定一個值,使用代碼

private void FillGridView() 
{ 
    TextBox txt; 
    txt = (TextBox)GridView1.HeaderRow.FindControl("txtBox1"); 
    txt.Text = dtValues.Rows[0][5].ToString(); 
} 

文本框「txtBox1」但我不能夠填補文本框。請幫忙。

+2

你在哪裏調用'FillGridView'方法。它需要發生在RowDatabound事件中或之後 – Chad 2011-05-12 16:38:11

+0

我試圖在綁定GridView中的數據後找到文本框。我的代碼是GridView1.DataSource = dt; GridView1.DataBind(); txt =(TextBox)GridView1.HeaderRow.FindControl(「txtBox1」); – 2011-05-13 03:59:13

回答

0

這可能會幫助一個很老的問題的人。在將數據插入到GV1後,我如何更新我的標題行文本框。希望能幫助到你。

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
    { 

     if (e.Row.RowType == DataControlRowType.DataRow) 
     { 

     } 


     if (e.Row.RowType == DataControlRowType.Header) 
     { 
      //((TextBox)GridView1.HeaderRow.FindControl("tbProjNumInsert")).Text 
      if (newMaxNum != null && newMaxNum.Length > 0) 
      {     
      ((TextBox)e.Row.Cells[4].FindControl("tbProjNumInsert")).Text = newMaxNum; 
      System.Diagnostics.Debug.WriteLine("GridView1_RowDataBound()...GridView1.Width !!!! " + ((TextBox)e.Row.Cells[4].FindControl("tbProjNumInsert")).Text + "........newMaxNum:" + newMaxNum); 
      } 
     } 

    }