【asp.net】用户控件&自定义控件

在原来的学习中,从vb到asp.net我们都接触了很多的控件,这些控件为我们的程序开发提供了很多的便利,在程序开发中,许多功能或代码都需要重复的使用,我们在牛腩的时候学习了模板方法和重复代码添加工具箱调用的方法,提高了效率。在功能方面使用了母版页,在asp.net中又学习了用户控件和自定义控件,开发人员可以自行开发用户控件和自定义控件以提高代码的复用性。下面来简单介绍一下这两种控件。

一、用户控件:

定义:

用户控件是用户自定义的可重用的一种控件,用户控件用.ascx文件表示,它不是编译代码,编译随网页动态的进行。开发人员能够根据程序的需要,定义和编写用户控件,开发所使用的编程技术与Web窗体编写的技术相同都包含一个用户界面页和一个代码隐藏文件,开发人员对用户控件进行修改,就可以将使用该控件的页面的所有控件进行更改。

创建与使用:

创建一个web项目,右击项目在"添加"中点击"web用户控件"即可添加.然后将文本和控件添加到设计图面,进行代码编写。使用时直接拖到aspx设计图面即可。

与aspx的区别:

1.扩展名必须为.ascx.

2.用户控件中不包含<HTML>、<BODY>和<FORM>元素

3.用户控件不能单独作为页面运行,必须嵌入到*.aspx页面或其它用户控件中使用

将aspx页面修改为用户控件:

1.去除<HTML>、<BODY>和<FORM>元素

2.将Web窗体页中asp.net指令类型从@Page更改为.ascx

3.将基类从System.Web.UI.Page更改为System.Web.UI.UserControl

修改起来比较容易,但是实际情况下一般不进行修改,直接进行添加。

二、自定义控件

定义:

Web自定义控件是在服务器上运行的编译组件,它将用户界面和其他相关功能封装在可复用包中,包含标准asp.net服务器控件的所有设计时功能。

自定义服务器控件分为两种:

第一种:*.aspx或*.cs代码经编译后生产的DLL,再添加引用到工具箱中使用,一般用于WebForm中。

第二种:*.cs实现,编译DLL,添加到工具箱使用的,一般用于WinForm中。

创建和使用:

创建项目右击添加,ASP.NET服务器控件,比如我们事先然后在代码中重写RenderContent函数的方法中

三、用户控件和自定义控件对比

四、母版页与用户控件

1.母版页提取多个页面的外围公共部分,开发内容页时,是嵌入母版页中间的,而用户控件是提取多个页面中间任意一个位置的公共部分,开发时把用户控件嵌入在开发的页面中,模板页时一种比较简单的保存同意风格的方法,同一个网站多个页面如果风格不一致,可能会给人造成不好的影响,我们可以将一个网站的公共元素(例如:网站logo,导航条或者广告条)整合到一起作为母版页。而控件可以是这个里面的一部分,我们可以把网站logo、导航条分别做成一个控件。

2.在母版页中可以使用用户控件,用户控件中不可以使用母版页。

目前对于它们的理解就是这些,用户控件与自定义控件,都是为了实现复用,是asp.net中页面重用的方式,为UI设计提供了便利。初次了解总结,如有纰漏请指正。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-24 23:32:51

【asp.net】用户控件&自定义控件的相关文章

ASP.NET用户控件事件的定义和实践

假定用户控件(UserControl.ascx)中包含按钮控件  AButton,希望实现按  Button  按钮时,包含该用户控件的页面可以接收到事件. UserControl.ascx.cs  中的处理: 1. 定义  public  的事件委托,如  ClickEventHandler; 2. 在  UserControl  类中声明事件,如  Click; 3. 在  UserControl  类中定义引发事件的方法,如  OnClick()方法; 4. 在  UserControl 

Asp.net 用户控件和自定义控件注册

在ASPX页中注册用户控件的方法 <%@ Register Src="ListPicker.ascx" TagName="ListPicker" TagPrefix="uc1" %> 在Web.config中注册用户控件 <controls> <add tagPrefix="scottgu" src="~/Controls/Header.ascx" tagName="

asp.net用户控件和自定义控件的区别

一: Web 用户控件 1.易于创建 2.为使用可视化设计工具的使用者提供有限的支持 3. 每个应用程序中需要控件的一个单独副本 4. 不能添加到 Visual Studio 中的工具箱 5. 适用于静态布局 Web 自定义控件 1.难于创建 2. 为使用者提供完全的可视化设计工具支持 3. 仅在全局程序集缓存中需要控件的单个副本 4. 可以添加到 Visual Studio 中的工具箱 5. 适用于动态布局 二: 用户控件(UserControl) : *.ascx是指页面中加载的功能块 自定

用户控件&amp;自定义控件----.Net再学

开始学习.Net到现在两年了快,开始学习java 也有大半年了,中间做项目,又开始.Net的学习.这次做.Net项目,后台代码敲的不是太多,重点放在了UI上,这也是这篇博客要写的内容有关,做UI就少不了控件的使用.这次做UI 主要是提取公共,抽象控件. 敲代码,就离不开控件,那是第一次.Net学习过之后,对于控件的认识很肤浅,通过这次学习,又弥补了对UI控件的认识.这篇博客要说的是:用户控件和自定义控件.提到这两种控件,想必编程的孩子们都不陌生,但是谈到使用,谈到他们的区别,伙伴们清楚吗? 我们

038. asp.netWeb用户控件之六实现日期选择的用户控件

web用户控件的ascx代码: <%@ Control Language="C#" AutoEventWireup="true" CodeFile="SelectDate.ascx.cs" Inherits="SelectDate" %> <script type="text/javascript" src="js/jquery.1.3.2.min.js"><

asp.net 用户控件

转载自http://www.cnblogs.com/SkySoot/archive/2012/09/04/2670678.html 在 .NET 里,可以通过两种方式把自己的控件插入到 Web 窗体框架中: 用户控件:它是一小段页面,可以包括静态 HTML 代码和 Web 服务器控件.用户控件的好处是一旦创建了它,就可以在同一个 Web 应用程序的多个页面重用它.用户控件可以加入自己的属性,事件和方法. 自定义服务器控件:它是被编译的类,它通过编程生成自己的 HTML .服务器控件总是预编译到

ASP.NET - 用户控件制作

首先添加用户控件: 在里面写上代码: <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="NewsCategory.ascx.cs" Inherits="News.Control.NewsCategory" %> <!--新闻分类--> <div id ="category" class ="Frm

ASP.NET~用户控件优化的登陆demo

对于用户控件的学习,现在只从以下几方面来理解一下: 1)何为用户控件? 以声明方式创建的服务器控件!相比一般控件来说,其最大的优势就是在同一个Web应用程序的多个页面可以重复使用,减少了其重复操作性,并且还可以加入自己的属性,事件和方法 2)用户控件特点?与Web窗体的相同点? 相同之处: 一个用户界面页 一个代码隐藏文件 异同之处: 用户控件:扩展名为.ASCX 用户控件中不包含<HTML><BODY><FORM> 所以两者之间是可以相互转换的. 用户控件的添加方法其

另类的动态加载用户控件

最新更新:原本在看到此方案的时候觉的想到这方案的朋友特别高深,后来本人把本文写出来想和大家分享下,才知道这个就是Dottext方案中的一个模块而已.真是汗啊,嫌自己见识太浅.既然写了就当复习了一次Dottext..这还是我第一次听说Dottext.     在BS架构这块,我们平时建一个网站,通常是创建一个WebSite网站,或者是创建一个WebApplication.然后在WEB项目里面建立相应的aspx文件,以及用户控件,自定义控件等等.但是做为一个新加入此项目的你要去修改里面的某一个功能模