首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

WebForm的Grid页面页脚DropDownList事件

ItemCreated呢,如果页面是第一次访问(Page.IsPostBack = false),那第一次执行DataBind的时候,会先激发ItemCreated事件,也就是说,执行了DataBind...页面返回时,也会执行ItemCreated事件,Page_Load之前,但是这时候就不会再执行ItemDataBound事件了。 我们写程序的时候,一般都会有这个 Page_Load if(!...Page.IsPostBack) { DataGrid1.DataSouce = ……….; DataGrid1.DataBind(); } 所以,页面第一次加载的时候,我们是执行了这个...但是当页面发的时候,这个ItemDataBound事件就不再执行了。 众所周知,ViewState不会记住控件的事件,只会记住一些属性。...但是,如果把DropDownList的事件注册,放到ItemCreated方法里面,即使页面PostBack,事件也不会丢失, 因为Page_Load之前,重新调用了这个ItemCreated方法,这个方法是不受

59920
您找到你想要的搜索结果了吗?
是的
没有找到

常见 Datagrid 错误

忘记在 Page_Load 事件中检查 IsPostBack 最常见的错误之一是忘记在数据绑定之前检查页面IsPostBack 条件。...可以(或应该)使用分页而没有使用 用户未必希望单个页面上滚动查看成千上万条记录。请确保您的应用程序设计合理,能够处理可能会返回大量记录的情况。...忘记在每个 Datagrid 事件中执行 .DataBind() 调用,从而导致发 一个常见的问题是:“当我点击 Datagrid 某一行中的 Edit(编辑)链接时,页面发,且不包含任何数据。...运行时不必要地 Datagrid 中动态创建 Datagrid 控件或列 某些业务和技术方案中,在运行时创建 ASP.NET 控件是必要的,也是完全合适的。...要使页面大小不增加,最简单的方法是无论对整个页面,还是单独对某些特定的控件,都禁用 ViewState。例如,如果页面不产生发,那么对整个页面禁用 ViewState 是安全的。

2.3K20

ASP.NET页面事件:顺序与传详解

如果您需要从数据库中加载ViewState这个方法将特别有用,因为ViewState只有IsPostBack为真的情况下才会进行恢复。...返回空将会导致强制执行非传,返回Request.Form则强制执行一个传。除非在特殊情况下,否则并不建议去操作这个,因为这个还会影响其他的事件。   ...如果您是第一次看页面的运行轨迹也许会觉得这个方法有些多余。但实际上这个方法是必要的因为OnLoad中创建的动态控件也需要他们传的值。...下一个方法,RaiseChangedEvents,也是页面中执行,并且也因为是基类的私有方法所有不能被继承。...下一个方法,RaisePostBackEvent,同样是因为是基类的私有方法不能被继承,同样也是页面中执行。

1K20

EnableEventValidation错误原因分析以及解决办法

可能有的人设置false后问题解决了,可能有的人设置false之后,该问题解决了却引发了连带问题。事件验证 又是怎么一事呢?...当EnableEventValidation 属性设置为 true 时,ASP.NET 仅允许发请求或调期间可由控件引发的事件。...二 是 在下拉菜单中使用ajax,常见于省市联动菜单,可能是由于aspx页面赋给了下拉菜单初始Item值,事件发时提示该错误,将下拉菜单初始Item值删除,绑定事件中添加Item项。...实则不然,先让我们看下ajax应用中的下拉列表框做了那些事,常见的是省市联动的ajax应用,市的下拉列表框在页面加载后是没有内容的,是根据用户选择的省 异步向服务器请求然后将响应解析之后加载到市的下拉列表框中...原来页面呈现的时候,DropDownList 的 render 事件,会遍历 DropDownList 每一项的Value 属性,与 DropDownList 的UniqueID 属性 hash 之后

2K30

ASP.Net请求处理机制初步探索之旅 - Part 4 WebForm页面生命周期

⑤确定IsPostBack:是否第一次请求该页面   现在重新回到Page类的ProcessRequest方法中,创建页面控件树完成之后,开始进入一个ProcessRequestMain方法,这个方法则真正地开启了页面生命周期之门...,ASP.NET会通过IsPostBack判断是否是第一次请求,如果不是,那么首先会加载ViewState并对发的数据进行处理。...= null) { handler(this, e); } }   PreLoad之后就是重头戏,也是我们最为熟悉的Load了,调用LoadRecursive()方法进入...事件触发(RaiseChangedEvents-->RaisePostBackEvent)   第二次处理发数据之后,会调用RaiseChangedEvents方法触发控件状态改变事件响应方法,例如...这里需要注意的是:服务器向浏览器返回html之前,对ViewState中的内容是进行了Base64编码的;   最后就是Render,进行最终的页面呈现了,换句话说:就是拼接形成HTML字符串。

1.3K20

System.ArgumentException: 发或调参数无效。配置中使用

关于同一个页面中使用Gridview控件的时候发现气updaeting事件无法被服务器所响应,看来它的错误报警然后查询了部分资料现在将整理的解决方法总结如下:点击update 事件无法响应原因出在发或调参数无效...看了半天也没发现是什么问题,检查了一遍代码也是对的,页面所有控件的ID,属性都检查了还是没找到问题。后来才发现是这么回事: 发生条件: 1.画面有隐藏控件。 2.多次的Gridview绑定。...然后设置btnSubmit.Visable=false,手动页面 上面添加。...Page.IsPostBack) { //绑定数据; } } 解决办法2: ...值,事件发时提示该错误,将下拉菜单初始Item值删除,绑定事件中添加Item项。

1.2K10

JS刷新当前页面的方法总结

2.replace() 该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL。...当调用 location.reload() 方法时, aspx页面此时服务端内存里已经存在, 因此必定是 IsPostback 的。...如果有这种应用: 需要重新加载该页面,也就是说期望页面能够服务端重新被创建,期望是 Not IsPostback 的。这里,location.replace() 就可以完成此任务。...代码: location.replace(location.href); 返回并刷新页面: location.replace(document.referrer); document.referrer...//前一个页面的URL 不要用 history.go(-1),或 history.back();来返回并刷新页面,这两种方法不会刷新页面

10.3K30

ASP.Net WebForm温故知新学习笔记:一、aspx与服务器控件探秘

页面中只需要通过即可获取该方法的返回值。...PS:当某个页面第一次被访问的时候,CLR就会使用一个代码生成器去解析aspx文件并生成源代码并编译,然后以后的访问就直接调用编译后的dll,这也是为什么aspx第一次访问的时候非常慢的原因。  ...bool值,为true则继续执行OnClick,为false则不继续)。   ...,我们可以Page_Load事件中判断IsPostBack是否为true,如果不为true则可以知道是第一次访问或者是请求页面的操作,而如果为true则代表是PostBack操作,我们可以分别进行不同的业务逻辑处理..."; }   (3)通过查看生成的页面html代码,我们没有发现页面中有IsPostBack的这个隐藏字段。

2.8K42

js刷新当前页面方法

语法:location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页。...true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5(“刷新”) replace 方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后...可以想到:当调用 location.reload() 方法的时候, aspx页面此时服务端内存里已经存在, 因此必定是 IsPostback 的。...如果有这种应用: 我们需要重新加载该页面,也就是说我们期望页面能够服务端重新被创建, 我们期望是 Not IsPostback 的。这里,location.replace() 就可以 完成此任务。...//前一个页面的URL 不要用 history.go(-1),或 history.back();来返回并刷新页面,这两种方法不会刷新页面

11.8K20

使用ASP.NET实现Model View Presenter(MVP)

也是MVP的另一个好处,许多变化可以限制View层而不要修改Presenter和Model。...,这是大型的应用程序中经常发生的事 l View不需要复制代码就可以不同的页面之间重用 l View可以不同的aspx页面中进行初始化。...此外一些事件依赖于页面上的验证是否通过或者是IsPostBack。例如数据绑定,IsPostBack的时候不能被引发。 声明:Page.IsPostBack和Page.IsValid是Web特有的。...下面的序列图表示了用户的初始请求(上面部分)和用户点击按钮”Add days”之后发生了什么.。 A)创建用户控件 这一步只是表示ASPX页面中声明的用户控件。页面初始化的时候,用户控件被创建。...即使你没有使用MVP,也是一个好问题。

1.1K80

enableEventValidation 发或调参数无效 的解决办法

可能有的人设置false后问题解决了,可能有的人设置false之后,该问题解决了却引发了连带问题。事件验证 又是怎么一事呢?...二 是 在下拉菜单中使用ajax,常见于省市联动菜单,可能是由于aspx页面赋给了下拉菜单初始Item值,事件发时提示该错误,将下拉菜单初始Item值删除,绑定事件中添加Item项。...Page.IsPostBack) 四 是 DropDownList 控件的ListItem 的Value 属性 包含汉字.只要将Value 改为英文或数字的就行了。 那实际情况是否是这样的呢?...实则不然,先让我们看下ajax应用中的下拉列表框做了那些事,常见的是省市联动的ajax应用,市的下拉列表框在页面加载后是没有内容的,是根据用户选择的省 异步向服务器请求然后将响应解析之后加载到市的下拉列表框中...原来页面呈现的时候,DropDownList 的 render 事件,会遍历 DropDownList 每一项的Value 属性,与 DropDownList 的UniqueID 属性 hash 之后

2K10

使用脚本操作UpdatePanel中控件的问题

因为UpdatePanel是一个异步的页面。这个页面初次加载的时候自然随着整个页面的刷新加载而加载,因此作用于页面级别的jQuery代码可以起到作用。...但是等到点击button之后,仅仅是UpdatePanel中的内部内容刷新了,整个页面根本不刷新(换句话说,整个页面的jQuery根本没有执行)。因此没有任何作用了。   ...同样地,这两个事件:  【相同点】一旦页面刷新,或者点击Submit页面导致整个页面发,或者位于UpdatePanel中的按钮导致局部页发,Page_Load和add_load照样执行。  ...IsPostBack){……}的方式判断是否发。add_load未提供了类似机制判断局部页面是否发。...初始化加载时候随着整个页面加载,因此page_loaded先加载完毕之后整个Application才加载完毕。

1.6K100

js实现页面刷新

当调用 location.reload() 方法时, aspx页面此时服务端内存里已经存在, 因此必定是 IsPostback 的。...如果有这种应用: 需要重新加载该页面,也就是说期望页面能够服务端重新被创建,期望是 Not IsPostback 的。 这里,location.replace() 就可以完成此任务。...//前一个页面的URL 不要用 history.go(-1),或 history.back();来返回并刷新页面,这两种方法不会刷新页面。...返回数组里面的元素。 5.如果子页面也是个框架页面,里面还是其它的子页面,那么上面的有些方法可能不行。...3.页面自动刷新js版 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 三、java写Servler,Action等程序时,要操作返回页面的话(如谈出了窗口,操作完成以后,关闭当前页面

20.4K40

ASP.NET中常用的优化性能的方法(转贴,Icyer收集整理)

该类并非创建新的对象,而是通过Append,Remove,Insert等方法直接对字符串进行操作,通过ToString方法返回操作结果。   ... Machine.config 文件中将 AutoEventWireup 属性设置为 false,意味着页面不将方法名与事件进行匹配和将两者挂钩(例如 Page_Load)。...当您不从页发到服务器时,这将十分有用: 注意 @ Control 指令中也支持 EnableViewState 属性,该指令允许您控制是否为用户控件启用视图状态...使用 Page.IsPostBack 避免对往返过程执行不必要的处理 如果您编写处理服务器控件发处理的代码,有时可能需要在首次请求页时执行其他代码,而不是当用户发送包含在该页中的 HTML 窗体时执行的代码...注意 如果不运行这种检查,发页的行为将不更改。Page_Load 事件的代码执行服务器控件事件之前执行,但只有服务器控件事件的结果才可能在输出页上呈现。

2.6K100

比较全面的Promise使用方式

本质上 Promise 是一个函数返回的对象,我们可以它上面绑定调函数,这样我们就不需要在一开始把调函数作为参数传入这个函数了。...约定 不同于“老式”的传入调,使用 Promise 时,会有以下约定: 本轮 事件循环 运行完成之前,调函数是不会被调用的。...即使异步操作已经完成(成功或失败),在这之后通过 then() 添加的调函数也会被调用。 通过多次调用 then() 可以添加多个调函数,它们会按照插入顺序进行执行。...,即,使用一个 catch,这对于链式操作中抛出一个失败之后,再次进行新的操作会很有用。...这导致大多数浏览器中不能终止的 Promise 链里的 rejection。 一个好的经验法则是总是返回或终止 Promise 链,并且一旦你得到一个新的 Promise,返回它。

86120
领券