ASP.NET控件开发 - 概念和HelloWorld控件

简介: 今天我们来看一下如何开发自己的ASP.NET控件。要开发ASP.NET控件首先必须知道一些控件开发的常用基类。如下:1)Control  这是所有控件的基类,所有控件都直接我间接继承它。2)WebControl  用于开发简单控件,它和Control的区别就是:      WebControl不但继承了Control的所有属性,还增加      了布局,可访问性,外观样式等特性。
今天我们来看一下如何开发自己的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="BlogC ontrol" 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!




























目录
相关文章
|
29天前
|
人工智能 前端开发 Devops
.NET技术在现代开发中的作用:.NET技术的核心价值、在现代应用开发中的实际应用、以及面临的挑战与未来趋势。
.NET技术是软件开发领域的核心力量,本文从其核心价值、实际应用及未来挑战三方面进行探讨。它支持多种语言,提供强大的开发工具和丰富的类库,并具备跨平台能力。在现代应用开发中,.NET广泛应用于企业级系统、Web应用、移动应用、云服务和游戏开发等领域。面对性能优化、容器化、AI集成等挑战,.NET持续创新以适应不断发展变化的技术环境。
48 4
|
29天前
|
开发框架 JavaScript 前端开发
震撼!破解 ASP.NET 服务器控件 Button 执行顺序之谜,颠覆你的开发认知!
【8月更文挑战第16天】在ASP.NET开发中,通过Button控件实现先执行JavaScript再触后台处理的需求十分常见。例如,在用户点击按钮前需前端验证或提示,确保操作无误后再传递数据至后台深度处理。此过程可通过设置Button的`OnClientClick`属性调用自定义JavaScript函数完成验证;若验证通过,则继续触发后台事件。此外,结合jQuery也能达到相同效果,利用`__doPostBack`手动触发服务器端事件。这种方式增强了应用的交互性和用户体验。
35 8
|
29天前
|
人工智能 开发框架 .NET
.NET技术的强大功能:.NET技术的基础特性、在现代开发中的应用、以及它如何助力未来的软件开发。
.NET技术是软件开发领域的核心支柱,以其强大功能、灵活性及安全性广受认可。本文分三部分解析:基础特性如多语言支持、统一运行时环境;现代应用如企业级与Web开发、移动应用、云服务及游戏开发;以及未来趋势如性能优化、容器化、AI集成等,展望.NET在不断变化的技术环境中持续发展与创新。
57 4
|
29天前
|
人工智能 开发框架 .NET
如何掌握.NET技术,引领开发前沿:.NET技术的核心能力、在现代开发中的应用实践、以及如何通过.NET技术实现持续创新。
.NET技术已成为软件开发不可或缺的部分,本文分三部分探讨:核心能力如多语言支持、统一运行时环境、丰富的类库及跨平台能力;现代开发实践包括企业级应用、Web与移动开发、云服务及游戏开发;并通过性能优化、容器化、AI集成等方面实现持续创新,使开发者站在技术前沿。
44 3
|
6天前
|
存储 运维
.NET开发必备技巧:使用Visual Studio分析.NET Dump,快速查找程序内存泄漏问题!
.NET开发必备技巧:使用Visual Studio分析.NET Dump,快速查找程序内存泄漏问题!
|
6天前
|
SQL 关系型数据库 数据库
七天.NET 8操作SQLite入门到实战详细教程(选型、开发、发布、部署)
七天.NET 8操作SQLite入门到实战详细教程(选型、开发、发布、部署)
|
6天前
|
消息中间件 开发框架 前端开发
YuebonCore:基于.NET8开源、免费的权限管理及快速开发框架
YuebonCore:基于.NET8开源、免费的权限管理及快速开发框架
|
12天前
|
开发框架 JavaScript 前端开发
|
17天前
|
JSON C# 开发者
💡探索C#语言进化论:揭秘.NET开发效率飙升的秘密武器💼
【8月更文挑战第28天】C#语言凭借其强大的功能与易用性深受开发者喜爱。伴随.NET平台演进,C#持续引入新特性,如C# 7.0的模式匹配,让处理复杂数据结构更直观简洁;C# 8.0的异步流则使异步编程更灵活高效,无需一次性加载全部数据至内存。通过示例展示了模式匹配简化JSON解析及异步流实现文件逐行读取的应用。此外,C# 8.0还提供了默认接口成员和可空引用类型等特性,进一步提高.NET开发效率与代码可维护性。随着C#的发展,未来的.NET开发将更加高效便捷。
34 1
|
29天前
|
人工智能 前端开发 开发工具
.NET技术的开发潜力是巨大的,其核心优势和广泛应用不断推动着软件开发的进步
.NET技术自推出后已成为软件开发的关键力量。本文分三部分探讨其开发潜力:核心优势如统一平台、强大工具与跨平台能力;现代应用中的创新,包括企业级与Web应用、移动开发、云服务及游戏制作;以及面对的挑战与未来机遇,如性能优化、容器化支持、AI集成等。.NET的持续发展正塑造着软件行业的未来。
64 1