惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The GitHub Blog
The GitHub Blog
Jina AI
Jina AI
月光博客
月光博客
博客园 - Franky
小众软件
小众软件
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
V
Visual Studio Blog
有赞技术团队
有赞技术团队
V
V2EX
IT之家
IT之家
阮一峰的网络日志
阮一峰的网络日志
Stack Overflow Blog
Stack Overflow Blog
H
Help Net Security
Apple Machine Learning Research
Apple Machine Learning Research
腾讯CDC
D
DataBreaches.Net
Hugging Face - Blog
Hugging Face - Blog
Martin Fowler
Martin Fowler
罗磊的独立博客
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
WordPress大学
WordPress大学
C
Check Point Blog
Microsoft Azure Blog
Microsoft Azure Blog
Microsoft Security Blog
Microsoft Security Blog

博客园 - Let's DotNet

Generating SSH Keys for Git Keyboard shortcuts for Windows C# 类初始化顺序 - Let's DotNet Office 2007安装后Google拼音输入法莫名其妙消失了,换成了微软拼音 在装有SAP客户端后安装VS2003时出错 Difference between ICallbackEventHandler and AJAX 无法通过Project Professional 2003连接到Project Server 2003的解决办法(转) AutoCoder——全新自动代码框架 基于性能的编程技巧点滴 "Union" in Oracle - Let's DotNet Atlas Project (转) DB2编程技巧 SQL Server 高阶应用 限制多行文本框(TextArea)中输入文字的长度(转) 给自己的某个文件夹的文件做一个列表(转) Google 桌面搜索... Eclipse 3.0资料收集(转) 一种改进的轻量级.NET应用程序性能测试框架 ASP.NET 应用程序性能优化
动态添加控件的一个注意点
Let's DotNet · 2005-06-16 · via 博客园 - Let's DotNet

近日,写一个类似于Google那种分页风格的分页控件:

个中遇到一个问题花了一个下午才搞定。。。
首先,控件是支持动态设置最大显示的页号链接数的,比如Google是10个。这就需要动态生成这些页码的链接。实现的方法当然是多样的,我选择了“动态添加控件”的方法,主要是不想写javascript

三下五除二,很快写完。但调试却遇到了一个问题,就是点击这些动态的控件进入其所对应页面时总是进page_load()即返回;需再点一次才能进入其绑定的点击事件。
总在想以前做类似东东的时候怎么没有遇到这个问题呢。。。
比较了以前做的东西[

在aspx页面动态添加控件],唯一的区别就是以前在生成动态控件都给其指明了一个ID(这是当时业务的需要),问题恰恰出在这里,运行发现每次postback后重写控件并绑定控件事件时其ID发生了变化,比如有3个页码,第一次的ID是1,2,3;第二次便变为4,5,6了,因而第一次postback后因为重写就找不到上一次的事件句柄了。

解决的办法:在生成动态控件时,给其指定一个ID!(当然要唯一了)