170 likes | 326 Views
ASP.NET 程序设计教程 ( 第 13 讲 ). 回顾. 1.CustomValidator 控件语法及应用 2.ValidationSummary 控件语法及应用. 第五章 验证控件与用户控件 5.2.1 ~5.2.6. 知识点 1. 用户控件概述 知识点 2. 创建用户控件 知识点 3. 添加用户控件 知识点 4. 动态加载用户控件 知识点 5. 公开构成控件的属性 知识点 6. 自定义用户控件的属性. 教学目标. 1. 了解用户控件概述 2. 掌握创建用户控件语法及应用 3. 掌握添加用户控件语法及应用 4. 掌握动态加载用户控件语法及应用
E N D
回顾 • 1.CustomValidator控件语法及应用 • 2.ValidationSummary控件语法及应用
第五章 验证控件与用户控件5.2.1 ~5.2.6 • 知识点1.用户控件概述 • 知识点2.创建用户控件 • 知识点3.添加用户控件 • 知识点4.动态加载用户控件 • 知识点5.公开构成控件的属性 • 知识点6.自定义用户控件的属性
教学目标 • 1.了解用户控件概述 • 2.掌握创建用户控件语法及应用 • 3.掌握添加用户控件语法及应用 • 4.掌握动态加载用户控件语法及应用 • 5.掌握公开构成控件的语法及应用 • 6.掌握自定义用户控件的语法及应用
知识点1.用户控件概述 • 5.2.1 用户控件概述 • 一个Web用户控件与一个完整的Web窗体相似,它们都包含一 • 个用户界面页和一个代码隐藏文件。在用户控件上可以使用与标 • 准Web窗体上相同的HTML元素和服务器控件。例如,如果要创建 • 一个将用作工具栏的用户控件,则可以将一系列Button Web服务器 • 控件放在该控件上,并创建这些按钮的事件处理程序。 • 用户界面页与.aspx页有以下两个区别。 • (1)文件扩展名必须为.ascx。 • (2)在用户控件文件中不包含<html>、<body>和<form>元素,这些元素应位于宿主页中。
知识点2.创建用户控件 • 5.2.2 创建用户控件 • 设计Web用户控件的方式与设计Web窗体的方式相同。在用户 • 控件上可以使用与标准Web窗体上相同的HTML元素和Web控件。 • 所不同的是,用户控件中不包含<html>、<body>和<form>元素, • 并且文件扩展名必须为.ascx。 • 在Visual Studio .NET中,通过以下步骤来创建Web窗体用户控件。 • (1)创建或打开一个Web项目。 • (2)选择“项目”→“添加Web用户控件”,指定文件名(.ascx),单击“打开”按钮。 • (3)在设计器中打开该用户控件后,将文本和控件添加到设计页面。 • (4)使用Web窗体设计器设置属性并创建控件所需的程序代码。
知识点3.添加用户控件 • 5.2.3 添加用户控件 • 若要将Web用户控件添加到Web窗体的“设计”视图中,请将该 • 控件从解决方案资源管理器中拖出并将其放到希望它在页上出现 • 的位置。Web窗体设计器会自动向Web窗体添加该控件的@ • Register指令和标记。从此时开始,该控件便成为页的一个组成部 • 分,并将在处理该页时呈现出来。此外,该控件的公共属性、事 • 件和方法将向Web窗体公开并且可以通过编程方式来使用,也可以 • 通过编程向页中添加用户控件。
案例 • 本例说明如何创建用户控件并将其添加到Web窗体页中。
4.掌握动态加载用户控件 • 5.2.4 动态加载用户控件 • 创建一个Web用户控件后,可以在设计模式下添加到Web窗体 • 页中,这是一种静态的加载方法。在某些应用场合,可能需要在 • 程序运行时动态地加载用户控件。通过编程可以实现用户控件的 • 动态加载,包括以下两个步骤。 • (1)通过调用Page对象的LoadControl方法从用户控件文件获取 • UserControl对象,语法格式如下: • Dim uc As UserControl = Page.LoadControl( virtualPath ) • 其中参数virtualPath指定用户控件文件(.ascx)的虚拟路径,调用 • 该方法后将返回指定文件中的UserControl对象。 • (2)通过调用容器控件(如PlaceHolder)的Controls.Add方法将用 • 户控件添加到该容器控件中,语法格式如下: • 容器控件.Controls.Add( uc )
案例 • 本例说明如何将用户控件动态地添加到Web窗体页中。
知识点5.公开构成控件的属性 • 5.2.5 公开构成控件的属性 • 若要公开构成控件的属性,可执行以下操作。 • (1)在用户控件的代码编辑器中创建一个公共属性。 • (2)在此属性的Get部分,编写用于检索想要公开的属性值的代码。 • (3)在此属性的Set部分,编写用于将此属性的值传递给构成控件的公开属性的代码。 • Public [ReadOnly|WriteOnly] Property ProptetyName As DataType • Get • Return Control1.Property1 • End Get • Set (ByVal Value As DataType) • Control1.Property1 = Value • End Set • End Property
案例 • 本例说明如何公开构成控件的属性。首先创建一个用户控件,它们包含两个文本框,公开这两个文本框的Text属性;然后在Web窗体页上添加该用户控件并对公开的属性进行访问。
知识点6.自定义用户控件的属性 • 5.2.6 自定义用户控件的属性 • 用户控件可以看成是一个包含有若干个构成控件的大控件, • 因此它也应该拥有自己的属性。但是,在默认情况下,用户控件 • 只有少数几个属性。为了对添加到Web窗体页上的用户控件进行控 • 制,可以考虑为该控件添加一些自定义属性,并通过在用户控件 • 中使用Public关键字声明全局变量来实现,这些全局变量便是用户 • 控件的属性。 • 例如: • Public TextBackColor As System.drawing.Color = Color.White • Public TextForeColor As System.Drawing.Color = Color.Black
案例 • 本例说明如何自定义控件的属性并在Web窗体页中设置该属性。
小结 • 1. 用户控件概述语法及应用 • 2. 创建用户控件语法及应用 • 3. 添加用户控件语法及应用 • 4. 动态加载用户控件语法及应用 • 5. 公开构成控件的属性语法及应用 • 6. 自定义用户控件的属性语法及应用
作业 • 教材P 165 4题
本讲结束 谢谢大家