2012-12-13 48 views
1

我有一些關於數據源在頁面生命週期中綁定的方式和時間的問題,我似乎無法在任何地方找到答案。 我有一個在設計時綁定到數據源的gridview。 DS的其中一個參數是下拉列表的選定值。這些下拉列表也是數據綁定來檢索它們的選項,並且下拉列表的自動回發屬性設置爲true。現在有些事情讓我感到困惑。自動數據綁定的奧祕

  1. 大部分時間改變下拉的值將重新加載gridview與新參數,並沒有必要手動調用gridview的databind()爲了這樣做。但是有些情況下gridview不會反彈,我不確定這些條件是什麼。 數據源何時會在參數更改時自動重新啓動,以及您何時需要從代碼手動調用數據綁定?
  2. 從代碼隱藏中調用數據綁定是否阻止自動數據綁定事件觸發,還是它們都會觸發,導致浪費額外的數據源查詢?
  3. 如果是前者,是否有辦法阻止額外的數據綁定發生,而不必將所有內容都移到代碼後面,並且失去了在設計視圖中爲控件設置數據源的便利?
  4. 這些問題的答案是否記錄在任何官方消息來源? (MSDN等)

回答

0

我不能確定沒有看你的代碼,但你可能想閱讀關於ViewState。

控件加載完成後,數據將保持在視圖狀態。您通常希望對(!IsPostBack)事件執行DataBinding,以便在回發時不需要重新綁定數據庫中的數據。

+0

不,我想在回發時重新綁定數據,因爲用戶更改數據源的參數。我想知道什麼時候自動發生,什麼時候不發生 – Trent