假如你有大量的asp.net页面,在其中你会要求访问者选择一个邮政编码。然后,基于这个邮编,显示与之相关的城市和省份。这项功能可以通过一个包含邮政编码的dropdownlist控件来组织,或者可以通过一个textbox控件来用于输入邮政编码。无论使用哪一种方式,只要访问者选取或者输入了一个邮政编码,你就需要将相应的城市和省份放在label控件中显示出来,有没有其它的方法可以实现此功能呢?
当然有,你可以自定义一个控件来实现。你可以创建一个包含相关的这些基本控件的自定义控件。然后通过设定该控件的属性值,可用来得到相关的邮政编码及其它信息。
  这次要在这个asp.net页面注册一个简单的用户自定义控件,然后以代码的方式和在asp.net页面表单内定义的方式定义一个这样的控件。在这个asp.net页面的顶端,你需要注册这个控件:
<%
  @register
   tagprefix="My"
   tagname="my_controls"
  src="../mycontrols.ascx"
%>
  其中tagprefix可以设置为任何你想要有代码中定义你的控件所用的名字,在定义控件时,这个属性和tagname属性一起使用,从而指出你正在创建一个这样的控件类型。src属性用来设定自定义控件的文件所在的位置。
  进行这样的定义之后,你就可以在代码中定义自己的控件了。如:
<my:my_controls
  id="My_controls_1"
  runat="server"
/>
  其中,My:my_controls标记名称就是在注册(register)标记中设定的tagprefixtagname属性的组合。之后,你可以为这个自定义控件提供一个名字,并指出该控件应该在服务器上执行。如果这个控件具有一些可写的属性的话,你可以在控件的定义中设置这些属性。如果控件有一个numlines属性的话,就可以这样来设置它:
<my:my_controls
  id="My_controls_1"
  numlines = 5
  runat="server"
/>
  或者也可以像下面这样在代码中进行设置:
my_controls_1.numlines=5
  在代码中自动将一个自定义控件实例化并添加到页面中,与标准控件的实例化过程没有太大的区别。具体如下:
dim mycontrol as usercontrol = loadcontrol("../mycontrols.ascx")
myform.controls.add(mycotrol)
  你将其中的变量标为一个usercontrol(自定义控件)数据类型。同时,在同一代码行上使用了loadcontrol方法,并将你的控件定义文件的路径传给这个方法。之后,你就具有一个自定义控件的实例化变量。然后,就可以像添加任何其他的控件那样将其添加到页面中。

出处:http://www.blueidea.com/tech/program/2003/1060.asp

转载于:https://www.cnblogs.com/ringwang/archive/2008/08/18/1270208.html

在ASP.NET中创建自定义控件初步(转)相关推荐

  1. asp.net中创建一个简单的自定义控件

    //程序名称:Class1.cs //程序功能:创建自定义控件 using System; using System.Collections.Generic; using System.Text; u ...

  2. 【译】在ASP.NET中创建PDF-iTextSharp起步

    .Net framework 中自身并不包含可以和pdf打交道的方法.所以,当你需要你的ASP.Net Web应用程序中包含创建或与PDF文件交互的部分时,就不得不去找可用的第三方组件.使用谷歌可以搜 ...

  3. VS中创建自定义控件

    第一步:创建一个ASP.NET WEB应用程序 第二步:在同一个解决方案中创建一个服务控件项目 2.1 再次创建一个asp.net web应用程序.如图: 2.2 然后在这个项目下创建一个Web窗体服 ...

  4. dojo在ASP.NET中使用Ajax初步

    我想先介绍一下dojo中的浏览器事件,由于不同的浏览器对dom事件的支持是不同的,dojo在这方面做了统一的封装,所以使用dojo不用担心浏览器事件不兼容的问题.问题也就由此而来,由于要兼容不同的浏览 ...

  5. 【译】在Asp.Net中操作PDF – iTextSharp -利用块,短语,段落添加文本

    本篇文章是讲述使用iTextSharp这个开源组件的系列文章的第三篇,iTextSharp可以通过Asp.Net创建PDFs,就像HTML和ASP.Net为文本提供了多种容器一样,iTextSharp ...

  6. 在Visual Studio 2019中创建ASP.NET Web项目

    一.打开Visual Studio 2019 选择创建新项目 创建后的页面如图所示 二.设计一个网页 右击新建项目,选择 添加 | 新建 2.源代码和设计模式 后缀说明 后缀为 ".aspx ...

  7. asp.net mysql 创建变_[ASP.net教程]EF Core使用CodeFirst在MySql中创建新数据库以及已有的Mysql数据库如何使用DB First生成域模型...

    [ASP.net教程]EF Core使用CodeFirst在MySql中创建新数据库以及已有的Mysql数据库如何使用DB First生成域模型 0 2018-06-30 07:00:08 官方教程: ...

  8. razor html帮助器,在 ASP.NET 网页(Razor)网站中创建和使用帮助器 | Microsoft Docs

    在 ASP.NET 网页(Razor)网站中创建和使用 Helper 02/17/2014 本文内容 本文介绍如何在 ASP.NET 网页(Razor)网站中创建帮助程序. 帮助器是一种可重用的组件, ...

  9. 在ASP.NET中随意创建图形信息

    如果没有一个外部组件的支持,在ASP中是不能动态创建图形的,不管它是一个图表,一个横幅或仅仅是一个图形计数器.可喜的是,这一点在ASP.NET中改变了.现在,我们只需要使用内置功能,就能够很容易动态创 ...

最新文章

  1. 信息安全系统设计基础第3周学习总结
  2. Java——File类
  3. fiddler如何设置过滤https_手把手教你如何给网站设置https
  4. 启用nginx报错80端口被占用
  5. 草莓CDMS原创内容分销系统-微信小说平台系统v1.0
  6. Python POST登陆linkedin分析(完),完整实现过程
  7. 计算机网络在办公自动化的应用,浅析计算机网络在办公自动化中的作用
  8. Windows Server2019 安装教程
  9. plotyy函数_plotyy函数参数设置
  10. 单例(Singleton)设计模式
  11. 高中辍学,三年间做遍各种零工,转行程序员改变人生
  12. 俄罗斯方块解析全过程
  13. Vue官网提供表单验证cnpm i vee-validate@2 --save
  14. 2023年北京邮电大学软件工程807考研信息汇总
  15. 使用腾讯云服务器发布网站
  16. springmvc执行过程源码分析
  17. 基于jsp(java)网络教学平台系统的设计和开发(含源文件)
  18. matlab abc dq,关于matlab及pscad中abc2dq模块的使用.doc
  19. 处理RAW格式的图像,需要什么软件?
  20. 关于NeteaseCloudMusicApi接口文档

热门文章

  1. 震惊!!用图形界面装B居然只需要短短110行代码!!
  2. android_home is not set mac,mac解决appium-doctor报ANDROID_HOME is NOT set
  3. 数字录音系统服务器,Internet呼叫中心坐席全程录音系统录音模块
  4. Linux安装python3.6.3
  5. Django-cookie的保存以及删除操作
  6. laravel数据迁移的时候遇到的字符串长度的问题
  7. Eclipse svn代码提交冲突
  8. JavaWeb学习之Path总结、ServletContext、ServletResponse、ServletRequest(3)
  9. Objective-C学习笔记2013[NSString]字符串[可变字符串中,加用app减用delete]
  10. POJ-3241 Object Clustering 曼哈顿最小生成树