




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第9章用户控件与自定义服务器控件在使用ASP.NET3.5进行开发时,不但可以使用VS2008封装的服务器控件,开发人员还可以自己定义控件,把Web开发过程经常需要重复使用的功能模块封装成用户自己定义的控件,在后续开发过程中,可以直接调用它们,或者做简单的修改就可以使用了。这样可以减小开发人员的工作量,做到一次开发重复使用的效果。例如,在实际开发过程中的注册模块、登录模块等功能一般的网站都会具备,而开发人员只需要在第一次开发的过程中将其功能实现,并封装成用户控件,这样在开发别的网站时,就可以直接调用它们,从而省去大量的时间,提高了工作效率。章节内容9.1用户控件
9.2自定义控件9.3复合控件
9.1用户控件开发人员可以根据开发的需求自行定义和编写用户控件,其编写的方法和编写普通的ASP.NETWeb页面相同。用户控件后缀名为.ascx,这样就与普通的Web页面区别开来,但编写的过程是相同的。9.1.1创建用户控件在“添加新项”窗口中,选择“Web用户控件”选项,在“名称”文本框中可以重新命名用户控件的名称。9.1.2使用用户控件在ASP.NET中引用用户控件时,需要在引用页中使用以下代码来注册用户控件,这样用户控件才能在普通的Web页面中使用。 <%@RegisterTagPrefix=“Sample”TagName=“Login”Src=“~/login.ascx”%> //声明控件引用上述代码中实现了在ASP.NETWeb页面中注册用户控件,在这段代码中,有几个属性是必须编写的,这些属性的功能如下。TagPrefix:定义控件位置的命名空间。有了命名空间的制约,就可以在同一个页面中使用不同功能的同名控件。TagName:指向所用控件的名字。Src:用户控件的文件路径,可以为相对路径或绝对路径,但不能使用物理路径。9.1.3将Web窗体转换成用户控件(1)将Web页面中的以下信息进行修改。
<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Default.ascx.cs"Inherits="_Default"%> 修改后的代码如下。 <%@ControlLanguage="C#"AutoEventWireup="true"CodeFile="Default.ascx.cs"Inherits="_Default"%>(2)删除页面中的<body><html><head>等标记。(3)将.cs文件中的以下信息进行修改。 publicpartialclass_Default:System.Web.UI.Page 修改后的代码如下。 publicpartialclass_Default:System.Web.UI.UserControl(4)将页面的后缀名修改成.ascx。9.2自定义控件用户控件能够执行很多操作,并实现一些功能,但是在复杂的环境下,用户控件并不能够达到开发人员的要求,因为用户控件大部分都是使用现有的控件进行组装,编写事件来达到目的。于是,ASP.NET允许开发人员编写自定义控件实现复杂的功能。9.2.1创建自定义服务器控件在“新建项目”窗口中,选择“模板”选项组中选择“ASP.NET服务器控件”选项。9.2.2使用自定义服务器控件单击“项目”选项卡,可以看到,在这里面没有任何的引用信息,这时就需要开发人员单击“浏览”选项卡,找到自定义的控件,添加进来。如果在“项目”选项卡中有已经引用好的自定控件,可直接选择,然后单击“确定”按钮。9.2.2使用自定义服务器控件图1“添加引用”窗口图2“项目”选项卡9.2.3将自定义控件添加到工具箱在VisualStudio中创建一个新项目,其包含一个单独的页面(如Default.aspx)。通过以下步骤将自定义控件DemoServerControl添加到VisualStudio的工具箱中。(1)单击菜单栏中的“工具”→“选择工具箱项”命令,弹出“选择工具箱项”窗口,如图3所示。(2)单击“浏览”按钮,使其转至包含DemoServerControl控件所在目录,如图4所示。9.2.3将自定义控件添加到工具箱图3“选择工具箱项”窗口图4找到程序集9.2.3将自定义控件添加到工具箱(3)选中.dll文件后,单击“打开”按钮,会在“选择工具箱项”窗口中出现ServerControl1程序集,如图5所示。(4)单击“确定”按钮之后,ServerControl1控件就出现在工具箱中了,如图6所示。9.2.3将自定义控件添加到工具箱
图5ServerControl1程序集图6ServerControl1控件出现在工具箱中9.3复合控件复合控件由多个组件组合而成,复合控件的功能要比简单组合几个控件的功能要强大得多,而且很多时候具有一定的专项性。在ASP.NET中的Login控件就是一个典型的复合控件。该控件用户界面由多个单独控件组合而成,并且使用单一的API对控件进行设置和访问,具有快速实现用户登录的功能。9.3复合控件要想创建复合控件必须要实现以下两点。(1)通常情况复合控件类必须派生自System.Web.UI.WebControls.CompositeControl类。(2)必须重写Control基类的CreateChildControls方法,以便对子控件进行初始化、实例化,并将其添加到控件树中。CreateChildControls用于通知使用基于合成实现的服务器控件,创建它们包含的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能热处理生产线企业数字化转型与智慧升级战略研究报告
- 聚四氟乙烯(PFTE)企业数字化转型与智慧升级战略研究报告
- 普通电弧炉钢企业数字化转型与智慧升级战略研究报告
- 电子平板仪企业ESG实践与创新战略研究报告
- 双列直插式开关企业数字化转型与智慧升级战略研究报告
- 2025-2030中国天麻素行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国夏威夷果行业市场发展分析及前景趋势与投资研究报告
- 2025-2030中国塑料基鸡蛋包装行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国城市绿化行业市场深度调研及投资前与投资策略景研究报告
- 2025-2030中国固定的鱼类发现者行业市场发展趋势与前景展望战略研究报告
- 广东省珠海市2024-2025学年七年级下学期期中考试英语试题(无答案)
- 2024年中国南水北调集团水网发展研究有限公司招聘考试真题
- (四调)武汉市2025届高中毕业生四月调研考试 语文试卷(含答案详解)
- 2023年郑州铁路职业技术学院单招职业技能考试题库及答案1套
- 2025年融媒体中心招聘考试笔试试题(60题)附答案
- 湖南省2025届高三“一起考”大联考(模拟二)语文试题及参考答案
- 商业地产项目整体经营方案
- 旅行社代订业务合同模板
- 第二单元 人民当家作主(A卷 基础夯实)2024-2025学年高中政治统编版必修三单元测试AB卷(含解析)
- 全国高中数学评优课大赛数学赛课教学设计(点评)一等奖作品专辑
- 2025年中国东方航空股份有限公司北京分公司招聘笔试参考题库附带答案详解
评论
0/150
提交评论