Page,你是怎样处理回发事件的?
在我的前一篇POST( 無刷新"頁面跳轉")中有提到Page類中的兩個常量(postEventArgumentID="__EVENTARGUMENT")和postEventSourceID="__EVENTTARGET"),通過Request.Form(或Request.Params)可以取到它們的值,它們的值的作用是可以知道是哪個控件引發了當前頁面的回發。對于Menu控件,這兩個值非常好。對于LinkButton,可以取到 postEventSourceID有內容,是LinkButton的ID。但是對于Button和ImageButton,就都取不到這兩個值了。附件中的頁面就是這樣一個例子。
?? 我分析了一下,它們還是有一定的共同和不同點的。Menu,LinkButton都實現了IPostBackEventHandler ,而Button,ImageButton除了實現這個接口外,還實現了IPostBackDataHandler。由于平常對控件這方面了解比較少,到目前為止還沒有真正理解控件機制,即使用Reflector仔細查看了一下Page的反編譯代碼,關鍵在ProcessPostData方法,但還是無法找出問題所在。為什么多實現了一個接口,差別咋就這么大呢?IPostBackDataHandler多做了什么事了呢?
另外,想在CreateChildControls方法中得到引發頁面回發的Button或ImageButton該怎樣做比較合適呢?
Page.rar
轉載于:https://www.cnblogs.com/hjf1223/archive/2006/06/21/432186.html
總結
以上是生活随笔為你收集整理的Page,你是怎样处理回发事件的?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Access结合aspnetpager分
- 下一篇: 建议CSDN增加谈恋爱专区