2010-01-22 47 views
1

上按鈕和負荷事件的Page_Load() 和之後(或者用它)GridView的自我更新更新我的數據源的參數的GridViewASP.NET [極品頁面加載後事件(GridView控件更新數據後)

我需要重命名標題行,但頁面加載後沒有事件。有關詳細信息,在這裏

的更多信息:

[On Button Click] I change DataSource and Bind it (SqlDataSource1.DataBind();) Then sure Page gone to Refresh elements. 

[開的Page_Load] GridView控件是不斷變化的數據,但如果我不能改變頭那裏,因爲它的這個功能:(

後看起來像負荷[多一個按鈕]我可以用一個函數添加新的按鈕 - 重命名頭和它的工作原理正確,每次

protected void Button2_Click(object sender, EventArgs e) 
{ 
    // Stack overflow 
    DataRow T; 
    if (go) 
     if (GridView2.HeaderRow.Cells.Count != 0) 
      for (int i = 0; i < SQF.SQF.Permission.Rows.Count; i++) 
      { 
       T = SQF.SQF.Permission.Rows[i]; 
       GridView2.HeaderRow.Cells[i].Text = (string)T["Caption1"]; 
       WebMsgBox.Show((string)T["Caption1"]); 
      } 
} 

麻煩:我不需要一個更多的按鈕,我需要重新命名標題行後單擊按鈕來更改數據,但我不知道我可以做到這一點。

謝謝。

回答

4

那麼你可以使用GridView的DataBound事件,像:

<asp:GridView runat="server" ID="SomeID" OnDataBound="GridVIew_OnDataBound" ... /> 

該特定控制數據綁定過程完成後右側的數據綁定事件發生。

+0

是的!就是這樣:)謝謝。 – Cynede 2010-01-22 11:48:45

2

Page_Load後有一個事件Page.PreRender。 也許它會適合你。

編輯。 組件的所有事件(例如GridView)都會在Page.Load和Page.PreRender之間激發。考慮使用RowDataBoundRowUpdated事件。

+0

錯誤在這裏:if(GridView2.HeaderRow.Cells.Count!= 0) 好像沒有網格中的任何東西:( – Cynede 2010-01-22 11:44:49

+0

回答編輯,但如果「組件的所有事件,如GridView,被解僱在Page.Load和Page.PreRender之間「爲什麼我得到錯誤,然後OnDataBound沒有錯誤? – Cynede 2010-01-22 12:05:50