[KB]如果UpdatePanel有多個觸發來源,要怎麼將內容Post回去原觸發的控制項呢?
這個問題的原出處:http://social.msdn.microsoft.com/Forums/zh-TW/236/thread/3ca2e625-d266-4990-a799-effcc8a9ec5b
我們首先在畫面上安排了三個TextBox,這三個TextBox擁有各自的PopupControlExtender,當使用者進入TextBox時,
就彈跳出一個UpdatePanel(這個UpdatePanel僅使用一個)供使用者選擇.
ASPX的程式碼如下:
畫面如下:
這裡遇到的問題是,當使用者進入某個TextBox時,就會跳出PopupControlID所設定的控制項(這裡是一個Panel, 內含有一個下拉選單)
當使用者選擇完畢後,會在DropDownList的SelectedIndexChanged事件中,把選擇的值送回使用者選擇的Textbox控制項中。
可是問題來了,要怎樣知道觸發的PopupControlExtender控制項是那個?
其實只要簡單三行,就可以搞定這個問題,先看答案:
可以透過AjaxControlToolkit.PopupControlExtender.GetProxyForCurrentPopup(Page)去得知目前頁面上觸發的PopupControlExtender是那個.
然後透過它去Commit值。
這是不是很簡單呢? 希望對您有所幫助.
如果您有微軟技術開發的問題,可以到MSDN Forum發問。
如果您有微軟IT管理的問題,可以到TechNet Forum發問喔。