可以看下 page的这个属性的源代码, 很多判断 跟 httpcontext 以及 viewstate 和一些标识属性 都有关系, 是不是 first post back 需要判断很多因素的...
看看页面周期吧
http://msdn.microsoft.com/zh-cn/library/ms178472.aspx
ASP.NET 页生命周期概述
IsPostBack 就是本页面提交本页面时为真(也就是访问的是第二次之后),非IsPostBack就是第一次访问本页面
是服务器端控件提交的时候,如果是form即使加了runate=server IsPostBack=false 刷新时IsPostBack=false
在页面里做一个隐藏表单域,默认值是空。
回发的时候判断是或否为空,为空就是第一次访问,如果为空就随便给赋个值。
下一次访问的时候就是有值了,有值就不是第一次访问的。
没看ispostback是否这么做的,大概应该就是这样~
ASP.NET采用的是控件+事件模型,它的页面表单默认的情况下是传递给自己,也就是回传,这样如果提交数据时就要判断此页面是否为第一次加载,也就是!Page.isPostBack ,如果!Page.isPostBack为true,则为页面首次加载;为false 则为回传!