服务器控件开发(一)

  开发之前先理解ASP.NET应用程序的生命周期和页面的生命周期;

  ASP.NET应用程序:

    请求>>>IIS>>>HTTP运行期(ISAPI)>>>HttpContent(上下文)>>>Http应用程序工厂(.aspx、.ascx)>>>Page控件树

  

  Page页面生命周期:

    Page_init>>>Page_Preload>>>Page_Load>>>Page_Render>>>Page_Unload

    省略一些过程...

  

  控件树的生成过程:

    服务器控件:

      Page控件是控件树的根部;

      Control类控件(不可视控件,如meta),RenderControl>>>Render>>>RenderChildren>>>RenderCotrol.....

      WebControl类控件(可视控件),AddAttributesToRender>>>RenderBeginTag>>>RenderContents>>>RenderEndTag

    静态文本:

      LiteralControl

  

    

时间: 2024-10-10 22:42:16

服务器控件开发(一)的相关文章

Asp.Net服务器控件开发的Grid实现(一)

使用Asp.Net做Web开发时,系统提供的控件,有时难以达成所要的目的.这时,有多种方式可以解决,比如采用html+js的形式,在前端布局出所要的界面,然后再通过ajax等方式去获取数据,以达成目的. 但这样做,很是费劲,特别是当布局出来的界面需要重用的时候,更加费劲.有人,会直接将该界面的代码进行拷贝,但这对后来的维护必然带来更大的问题.所以就考虑,有没有一种方式可以让布局得到重用,又便于维护的.Asp.Net的控件可以很方便的布局,同时又能在后台中直接操作控件,实现相关的数据逻辑.所以就想

Asp.Net服务器控件开发的Grid实现(二)

我们先来实现Grid类,代码如下: Grid.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Web.UI; namespace AspNetS

Asp.Net服务器控件开发的Grid实现(四)回发事件

在使用Grid的时候,会用到链接跳转.如果只是普通的链接跳转,那只要使用a标签的href就可以实现.但是有时,我们希望在链接跳转的时候,能够引发回发事件,在后台作出一定的处理,然后再跳转.这样要如何实现呢?我们可以定义一个LinkButtonField来实现.代码如下 using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text;

ASP.NET 2.0服务器控件开发的基本概念(转载)

利用ASP.NET 2.0技术,创建Web自定义服务器控件并不是一件轻松的事情.因为,这需要开发人员了解并能够灵活应用多种Web开发技术,例如,CSS样式表.客户端 脚本语言..NET开发语言.服务器控件开发技术,甚至是当前最火的AJAX技术等等.虽然现实如此"艰难",但是这种开发技术也不是真的难到不可掌握. 事事都要从头做起.本文将针对利用asp.net 2.0技术,创建Web自定义服务器控件的基础知识进行详细介绍,内容包括:服务器控件概念.控件类型.生命周期等. 1.ASP.NET

asp.net服务器控件开发系列一

最近想写写博客记录下自己学习开发服务器控件. 第一步:搭建环境. 1.新建一个项目类库,用于保存控件: 2.新建一个Web工程,用于调用控件: 如图: 第二步:在控件类库下,新建一个服务器控件类TextBox.cs文件.代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Web; u

服务器控件开发(二)

区分Control类和WebControl类: 服务器控件可以继承自这两个类: 探究这个两个类的区别,以及这两个类分别适用在哪种情况! 本文的学习过程中,使用到的类库为ControlLibrary,这个类库可以自己命名: 首先编写一个继承自Control类的SimpleControl控件:类库中新建一个SimpleControl类 using System; using System.Web; using System.Web.UI; namespace ControlLibrary { //继

Asp.Net服务器控件开发的Grid实现(三)

下面是GridColumnsEditor的实现代码: GridColumnsEditor.cs using System; using System.Collections.Generic; using System.ComponentModel.Design; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Web.UI.WebControls; namespace AspNetS

atitit.提升开发效率---使用服务器控件生命周期 asp.net 11个阶段 java jsf 的6个阶段比较

atitit.提升开发效率---使用服务器控件生命周期  asp.net 11个阶段  java jsf 的6个阶段比较 如下列举了服务器控件生命周期所要经历的11个阶段. (1)初始化-- --在此阶段中,主要完成两项工作:一.初始化在传入Web请求生命周期内所需的设置:二.跟踪视图状态.首先,页面框架通过默认方式引发Init事件, 并调用OnInit()方法,控件开发人员可以重写该方法为控件提供初始化逻辑.此后,页面框架将调用TrackViewState方法来跟踪视图状态. 需要注意的是:多

ASP.NET 中服务器控件和html控件的使用

Asp.net开发中,控件无疑给开发人员带来了方便,大大提高了开发速度,如果纯粹的用托控件方式来开发网站,我想应该没有其他什么开发工具能够拼的过visual studio(以下简称vs)了.一个企业站用1~2天就可以完成,如果要求简单的,估计半天就搞定,这样开发速度,估计有些人还不信. 然而,使用vs开发就是托控件吗?回答是否定的.这个要根据实际情况来选择到底是不是该用服务器控件.下面,天智海网络就和大家浅谈下什么时候适合用服务器控件,而什么情况则应该少用或者不用服务器控件. 首先,用不用服务器