一个按钮被点击之后背后的故事(1)
2013-12-03 00:15
309 查看
服务器按钮点击背后的故事
首先我新建一个窗体,拖上一个服务器按钮然后在Page_Load事件打上这么一段话
找到这个dll拖入反编译器
在这里之前我觉得我有必要简单介绍一下页面生命周期
当然我说的非常简单,想深入一下的朋友们可以百度一下当客户端向服务器提交请求的时候服务器会自动new一个页面对象然后生成控件树,并执行ProcessRequest方法执行生命周期而按钮点击可以理解为回发,当用户点击按钮的时候会向服务器post。具体怎么执行的我们往下看。
这里我直接进入ProcessRequestMain里说页面执行ProcessRequest最终执行的就是这个方法
往下找我们会找到这么个方法。
这个方法就是服务器控件点击的核心方法我们打开msdn搜下这个方法的含义
这句话的意思就是处理按钮点击的事件点击按钮的时候在内部会调用这个方法。
再注意
是页面回发的时候执行的也就是可以简单的理解就是点击服务器按钮执行的(虽然这么说不太恰当)
点进去我们发现
页面先调用this的这个方法而我们发现这里的不会是this还是control的这个字段都是IPostBackEventHandler类型
也就是我们再点进去这个方法会发现
很明显最终调用是这个方法,也就是说控件的这个属性必须有RaisePostBackEvent(eventArgument);可是控件这个属性本身是没有这个方法的。也就是说Control在执行自己的生命周期动态给这个接口实现了相应的类。我们点进去这个属性囧好像不能添图片那我们下期再说吧
首先我新建一个窗体,拖上一个服务器按钮然后在Page_Load事件打上这么一段话
Response.Write(this.GetType().Assembly.Location);输出C:\Users\pc1\AppData\Local\Temp\TemporaryASP.NETFiles\website\b68fbf31\a98b13a6\App_Web_lps21nlu.dll
找到这个dll拖入反编译器
在这里之前我觉得我有必要简单介绍一下页面生命周期
当然我说的非常简单,想深入一下的朋友们可以百度一下当客户端向服务器提交请求的时候服务器会自动new一个页面对象然后生成控件树,并执行ProcessRequest方法执行生命周期而按钮点击可以理解为回发,当用户点击按钮的时候会向服务器post。具体怎么执行的我们往下看。
这里我直接进入ProcessRequestMain里说页面执行ProcessRequest最终执行的就是这个方法
往下找我们会找到这么个方法。
这个方法就是服务器控件点击的核心方法我们打开msdn搜下这个方法的含义
这句话的意思就是处理按钮点击的事件点击按钮的时候在内部会调用这个方法。
再注意
是页面回发的时候执行的也就是可以简单的理解就是点击服务器按钮执行的(虽然这么说不太恰当)
点进去我们发现
页面先调用this的这个方法而我们发现这里的不会是this还是control的这个字段都是IPostBackEventHandler类型
也就是我们再点进去这个方法会发现
很明显最终调用是这个方法,也就是说控件的这个属性必须有RaisePostBackEvent(eventArgument);可是控件这个属性本身是没有这个方法的。也就是说Control在执行自己的生命周期动态给这个接口实现了相应的类。我们点进去这个属性囧好像不能添图片那我们下期再说吧
相关文章推荐
- android中如何添加一个监听按钮,点击之后从一个activity跳转到另一个activity
- 点击一个按钮,弹出框出现几秒钟之后,跳转到另一个页面
- 登录按钮点击之后本页出现一个小的页面,类似于弹窗
- 用户点击获取验证码之后我们会发送一条信息到用户手机,然后就会出现一个倒计时按钮,很像支付宝手机付款效果了,下面我给大家分享两个js效果
- 如何让UIView中的Button点击之后跳转到另一个ViewController上去,ViewController上也有一个按钮 可以返回
- 回到顶部,当页面下拉到一定高度时,就会出现回到顶部的按钮,点击回到顶部之后,会有一个速度的变化回滚到顶部,如果正在回到顶部时,鼠标的滚轮转动了就会停止回到顶部
- js中 做一个button按钮,页面开始五秒钟之后才可进行点击,并且要求按钮上实时显示当前所剩秒数
- asp.net 点击一个按钮弹出对话框选择文件然后选择文件完成之后就自动上传文件 input(file)
- 说说Android桌面(Launcher应用)背后的故事(七)——又是一个附属品(可以转动的绚烂饼图)
- Cocos Creater学习笔记1 - 从0开始创建一个新项目并且做一个简单的按钮点击回调
- 当点击一个按钮时把gridview中的值导入到excel中
- 一个tableView的Cell中有两个点击按钮及tableView的重用
- DataGrid点击删除按钮弹出确认对话框一个好办法
- Qt 一个点击事件和改变按钮文字的demo
- 如果某个页面上点击按钮发起了一个http url请求,去执行一个action,但是还没等这个action完成,我就刷新了这个页面,然后又点击了这个按钮,这样之前的那次http url请求还在执行吗?
- 用户在文本框中输入需要转换的十进制数,通过点击3个按钮在标签中显示结果。(点击一个实现一个)
- 让一个按钮自动触发,自动执行onclick鼠标单击事件. 默认已点击.
- 7、8上的cell上的一个按钮,当点击按钮时,要拿到这个cell,可以用代理,也可以用superview
- 怎么销毁一个Activity,点击按钮退出activity
- cell中有一个按钮,点击按钮删除本行cell,并有系统自带的由右向左的效果(效果有多种)