设为首页 加入收藏 网站首页
休闲娱乐
军事·社会百态·娱乐八卦·校园
体育·美女写真·幽默笑话·游戏
综合·在线视频·搞笑图片·灵异
两性生活
两性知识·性爱技巧
情色实录·两性图片
女性健康·同性之恋
电脑网络
网络编程·网页制作·软件教学
操作系统·图形图象·冲浪宝典
网络安全·邮件系统·认证考试
热点专题
芙蓉·真人漫画
72式·欲望都市
帅哥·人体彩绘
您现在的位置: 世纪中国 >> 网络编程 >> ASP.NET教学 >> asp.net实例 >> 教程正文
创建用于ASP.NET的分页程序控件
作者:中国图霸    教程来源:网络    点击数:    更新时间:2007-1-1
的控件。

处理返回事件时,ASP.NET 运行时试图查找事件的目标 ID 与主窗体的任何直接子控件之间是否存在匹配关系。LinkButton 是分页程序的子控件,因此不能运行其服务器端的代码。这是否意味着只有窗体的直接子控件才能启动并处理服务器事件?当然不是,只要您使用命名容器。

通过使 SqlPager 控件实现 INamingContainer 接口,可以将嵌入式链接按钮的实际 ID 从“First”更改为“SqlPager1:First”。当用户单击以查看新页面时,返回事件将 SqlPager1:First 作为目标控件。实际上,运行时用来识别目标控件的算法比上面介绍的要复杂一些。运行时将事件目标控件的名称看作是用冒号分隔开的字符串。实际上,这种匹配是在窗体的子控件和用冒号分隔开的字符串(如 SqlPager1:First)的第一个标记之间进行的。由于分页程序是窗体的子控件,因此匹配时会成功,分页程序获取单击事件。如果您认为这种解释不够充分或者令人费解,只要下载 SqlPager 控件的源代码,删除 INamingContainer 标记接口并进行重新编译即可。您将看到分页程序能够返回,但不能内部处理单击事件。

INamingContainer 接口是一个不具备方法的标记接口,其实现只需在类声明中指定名称即可,无需进行任何其他操作。

复合控件的另一个重要方面是,它们通常不需要自定义逻辑来进行显示。复合控件的显示遵循其组成控件的显示。生成复合控件时,通常无需覆盖 Render 方法。

控件的 SqlPager 树由一个包含两个单元格的单行表格组成。该表格继承了分页程序的大部分可视设置,如前景颜色和背景颜色、边框、字体信息和宽度等。第一个单元格包含导航条,其结构取决于 PagerStyle 属性的值。如果分页程序的样式为 NextPrev,则导航条将由四个 VCR 式的按钮组成。否则,它将由一个下拉列表组成。

private void BuildControlHierarchy()

{

   // 生成环境表格(一行,两个单元格)

   Table t = new Table();

   t.Font.Name = this.Font.Name;

   t.Font.Size = this.Font.Size;

   t.BorderStyle = this.BorderStyle;

   t.BorderWidth = this.BorderWidth;

   t.BorderColor = this.BorderColor;

   t.Width = this.Width;

   t.Height = this.Height;

   t.BackColor = this.BackColor;

   t.ForeColor = this.ForeColor;



   // 生成表格中的行

   TableRow row = new TableRow();

   t.Rows.Add(row);



   // 生成带有导航条的单元格

   TableCell cellNavBar = new TableCell();

   if (PagerStyle == this.PagerStyle.NextPrev)

      BuildNextPrevUI(cellNavBar);

   else

      BuildNumericPagesUI(cellNavBar);

   row.Cells.Add(cellNavBar);



   // 生成带有页面索引的单元格

   TableCell cellPageDesc = new TableCell();

   cellPa

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

分类推荐
社会 社会 娱乐 军事 校园
幽默 体育 女性 专题
电脑 编程 网页 软件 系统
安全 图象 冲浪 认证
搞笑 人物 动物 物品 表情
签名 色图 漫画 奇闻
美女 明星 清纯 自拍 欧美
丝袜 卡通 性感 走光
两性 知识 性图 孕育 技巧
同性 单身 情感 实录
视频 写真 搞笑 MTV 翻唱
写实 片段 游戏 综艺
asp.net实例热门文章
普通教程 用Asp.Net创建基于Ajax的聊天室
普通教程 用ASP.NET 2.0设计网络在线投票
普通教程 设计ASP.NET新闻管理系统
普通教程 asp.net 上传大文件控件
普通教程 ASP.NET中实时图表的实现
普通教程 用ASP.NET结合XML制作广告管理
普通教程 自己写的一个图形验证码页面(A
普通教程 做完一个小网站的一点经验总结
普通教程 ASP.NET结合存储过程写的通用搜
普通教程 支付宝接口(刚完成,应该是目
普通教程 一个最简单的会员登陆代码
普通教程 C#版的网站新闻发布系统
普通教程 如何实现站点的RSS输出
普通教程 做完一个小网站的一点经验总结
普通教程 利用ASP.NET构建网上考试系统
普通教程 做完一个小网站的一点经验总结
普通教程 ASP.NET结合COM组件发送Email
普通教程 DotNet语音技术实现
普通教程 用ASP.NET实现一个简单的计算器
普通教程 用ASP.Net写一个发送ICQ信息的

  广东广州海珠区 世纪网络工作室 版权所有 上海电信提供网络带宽
信箱: 9297659@qq.com 粤ICP备06113754号