2008-09-29 61 views
1

當添加一些複雜的EditItemTemplate(多個字段在一個模板中),然後解析來自RowUpdating事件的控件時,用戶手動輸入的控件沒有值。我的猜測是,當數據綁定時會有一些事情發生,但是我已經有了一些實例,只需向代碼隱藏中的控件添加屬性並將其屬性添加到代碼中即可啓動該行爲並刪除該代碼以使代碼正常工作。作爲解決方法,我可以通過Request(controlname.UniqueId)來獲取它的值,但這只是一種破解。ASP.NET GridView回發沒有設置發佈控件的值

編輯 當我訪問值,像這樣

TextBox txtValue = gvwSettings.SelectedRow.FindControl("txtValue") as TextBox; 

文本框被發現,但爲.text是沒有對用戶輸入。

回答

1

你關閉了ViewState嗎? 您是否在模板中以編程方式添加了控件?如果是這樣,你是否在正確的階段創建它們?

0

您應該能夠使用GridViewUpdateEventArgs檢索輸入的值,例如:

TextBox txtValue = gvwSettings.SelectedRow.FindControl("txtValue") as TextBox; 

我以前使用的語法和它的工作原理就像一個魅力。

0

搬遷後回的數據綁定到Page_Init

+0

不,那是太早:) 任何地方從加載預呈現是確定IIRC。我更喜歡堅持加載。 – leppie 2008-09-29 16:25:45

相關問題