在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
今天我们来看一下如何开发自己的ASP.NET控件。
要开发ASP.NET控件首先必须知道一些控件开发的常用基类。 如下: 1)Control 这是所有控件的基类,所有控件都直接我间接继承它。 2)WebControl 用于开发简单控件,它和Control的区别就是: WebControl不但继承了Control的所有属性,还增加 了布局,可访问性,外观样式等特性。 (我们等下的HellowWorld控件就要继承它) 3)CompositeControl 用于开发组合控件,把现有控件组合起来。 4 DataBoundControl 开发数据绑定控件。(例如:GridView, DropDownList) 5) HierarchicalDataBoundControl 开发具有层次级别的数据绑定控件。(例如:Menu, TreeView) 6) HierarchicalDataSourceControl 作为HierarchicalDataBoundControl的数据源控件。 7)ListControl 开发列表类型控件。(例如:DropDownList, ListBox) 8) BaseValidator 开发验证控件。 下面我们就来看一下开发一个简单的HellowWorld控件的基本步骤。 首先,我们需要新建一个控件项目,我们以后的控件都会在这个项目里。 参考下图: 然后,需要给我们的Web项目添加对我们控件项目的引用,参考下图: 接着,我们可以创建一个HelloWorld控件了,需要新建一个cs文件,如下: 下面是 HelloWorld控件的源代码:
using System;
using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace BlogControl { [ToolboxData("<{0}:HelloWorld runat=server></{0}:HelloWorld>")] public class HelloWord : WebControl { protected override void Render(HtmlTextWriter writer) { writer.Write("Hello David,this is your first ASP.NET control application!"); } } } 然后,在客户端的aspx页面里我们为了使用控件,必须注册它,如下语句: <%@ Register Assembly="BlogControl" Namespace="BlogControl" TagPrefix="cc1" %> 完整代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="HelloWorld.aspx.cs" Inherits="BlogNet.AspNetControl.HelloWorld" %>
<%@ Register Assembly="BlogControl" Namespace="BlogControl" TagPrefix="cc1" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>HelloWord控件</title> </head> <body> <form id="form1" runat="server"> <div> <cc1:HelloWord ID="HelloWord1" runat="server"/> </div> </form> </body> </html> 输出结果: Hello David,this is your first ASP.NET control application! |
请发表评论