2010-08-13 70 views
2

我試圖通過回發來保留文本框的內容,並且我已經耗盡了所有的努力,但無法使其正常工作。ASP.NET - 動態控制值和回傳

發生的事情是:

  1. 用戶選擇一個單選按鈕
  2. 取決於哪個按鈕是 選擇,用戶控件加載 指定一些數據和視圖狀態 說哪個枚舉類型是 相當於至。
  3. 當他們點擊 保存,如果用戶控件僅僅是一個 文本框輸入 - 最簡單的),該 內容被讀取並保存,然後 保存到數據庫與 格式(的單選按鈕選擇),所以 他們能稍後再次反序列化 。
  4. 回覆頁面的帖子,並且 的值和格式都是從 這個數據庫中讀出的,然後加載右邊的控件 。

問題是 - 頁面第一次回發,它的工作原理。每隔一次回發它重置爲文本框的默認值。

我在別處有一個非常類似的設置,所以我認爲這可能是我永遠不會想到的一件小事。有很多代碼,因此可能更容易討論做什麼(加載動態控件,填充值等),而不是如何去做。

回答

0

我原來的代碼中實際存在一個錯誤,這意味着它永遠不會以我使用修改版本的方式存在。顯然狀態在Page_Load中恢復,所以任何控件都需要初始化以恢復其值。

在Page_PreLoad中創建控件,然後在Page_Load解決問題後填充它。