190 likes | 378 Views
第八章 自定义控件 和用户控件. 学习要点. 组件概念 用户控件 自定义控件属性 自定义控件方法 自定义控件事件 从头 开始创建自定义控件 扩展现有控件 复合控件. 组件概述 ---1 为什么要用组件?. 2. 什么是组件?. 可以在不同的应用程序中使用的对象的集合。 软件编程中的积木。 是个功能完备的单元,带有与它的内部体系结构相对独立的外部接口 例如 DLL (动态链接库) 文件对话框 aspnet_isapi.dll :用来处理 ASP.NET 页面 FrameWork 类库. 3. 组件的优点 :.
E N D
学习要点 • 组件概念 • 用户控件 • 自定义控件属性 • 自定义控件方法 • 自定义控件事件 • 从头 开始创建自定义控件 • 扩展现有控件 • 复合控件 ASP.NET教程 张奎 2006
组件概述---1为什么要用组件? ASP.NET教程 张奎 2006
2.什么是组件? • 可以在不同的应用程序中使用的对象的集合。 • 软件编程中的积木。 • 是个功能完备的单元,带有与它的内部体系结构相对独立的外部接口 • 例如DLL(动态链接库) • 文件对话框 • aspnet_isapi.dll:用来处理ASP.NET页面 • FrameWork类库 ASP.NET教程 张奎 2006
3.组件的优点: • 单个组件比一个功能齐全的应用程序要简单的多.它仅仅是一组预先定义号的功能。 • 组件功能是独立的,如果接口相同可以拿另外一个组件来代替原来的组件,可以做到无缝升级 • 可以重复使用。 • 减少代码量,使得代码更容易维护。 ASP.NET教程 张奎 2006
组件使用 • ASP.NET中操作Word文件? • ASP.NET中操作EXCEL文件? • 演示在ASP.NET中操作Word和Excel文件 ASP.NET教程 张奎 2006
ASP.NET中创建用户控件 • 1、什么是用户控件? • ASP.NET中的组件 • 是封装到可重用控件中的Web表单。它们用来保存网站中许多页面所需要的重用代码块。 ASP.NET教程 张奎 2006
用户控件概念 ASP.NET教程 张奎 2006
用户控件创建 • 创建一个web项目 • 在”项目”菜单中单击”添加web用户控件” • 将文本和控件添加到设计图面 • 希望能够一边编程方式访问的所有控件都必须是web窗体服务器控件活html服务器控件 • 使用web窗体设计器设置其属性并创建控件所需的任何代码 ASP.NET教程 张奎 2006
将aspx页面修改为用户控件 • 去除<html>,<body>和<form>元素 • 将web窗体也中asp.net指令类型从@page更改为@control • 更改指令的codebehind属性引用用以反映.aspx宽展名将更改为.ascx • 将基类从system.web.ui,page更改为System.Web.UI,UserControl ASP.NET教程 张奎 2006
用户控件的使用 ASP.NET教程 张奎 2006
Web自定义控件的概念 • Web自定义控件是在服务器上运行的编译组件 • Web自定义控件将用户界面和其他相关功能封装在可复用包中 • Web自定义控件可以包含标准ASP.NET服务器控件的所有设计时功能 ASP.NET教程 张奎 2006
Web用户控件和web自定义控件的区别 ASP.NET教程 张奎 2006
从头开始创建自定义控件 • 如果现有的web服务器控件(或其组合)都不符合要求,则可以通过从基本控件雷进行派生来创建一个自定义控件 • 基本控件类提供web服务器控件所有基本功能,因此可以将注意力集中在所需功能的编程上 ASP.NET教程 张奎 2006
为自定义控件添加属性 • 自定义控件应该定义属性而不是公共字段 • 设计器在属性浏览器中显示属性而不是显示公共字段 • 属性实现了数据的封装 • 属性的定义 • 数据成员的定义 • Get和set访问器 ASP.NET教程 张奎 2006
扩展现有控件功能 • 如果某 一现有的服务器控件基本上符合要求但缺少一些必要的功能,则可以通过从该控件进行派生并重写其属性,方法和事件来自定义该控件 ASP.NET教程 张奎 2006
创建复合控件 • 可以编译一个控件,使其组合两个或更多个现有控件的 功能 • 例如,如果需要一个控件来封装一个按钮和一个文本框,则可以通过将现有控件编译在一起来创建该控件 • 复合控件派生自UserControl类 ASP.NET教程 张奎 2006
ASP.NET页面设计 • ASP.NET页面设计元素 • HTML服务器控件 • WEB服务器控件 • WEB验证控件 • 用户控件 • 自定义控件 • 页面设计建议 • 将功能相同的页面元素组合成用户控件 • 使用用户控件构建ASP,.NET页面 ASP.NET教程 张奎 2006
作业 • 按照课堂示例: • 创建一个用户控件 • 创建一个自定义控件 ASP.NET教程 张奎 2006