用户控件可用来实现页面中可重用的代码,是可以一次编写就多处方便使用的功能块。它们是 ASP.NET控件封装最简单的形式。由于它们最简单,因此创建和使用它们也是最简单的。用户控件实际上是把已有的服务器控件组合到一个容器控件中,这样就可以创建出能在整个Web项目中使用的功能强大的对象了。

简单来说,用户控件是能够在其中放置标记和Web服务器控件的容器,可以被看作个独立的单元,拥有自己的属性和方法,并可被放入到ASPX页面上。其工作原理与 ASP. NET页面非常相似。也可以这样理解:当一个Web窗体被当作 Server控件使用时这个Web窗体便是用户控件。下面给出搜索框用户控件的小例子:

一、添加用户Web控件 WebUserControl.ascx

二、WebUserControl.ascx    源码

一个textbox,三个button实现搜索功能

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl.ascx.cs"Inherits="用户Web控件.WebUserControl" %>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="baidu" runat="server" Text="百度搜索" OnClick="baidu_Click" />
<asp:Button ID="sougou" runat="server" Text="搜狗搜索" OnClick="sougou_Click" />
<asp:Button ID="sanliuling" runat="server" Text="360搜索" OnClick="sanliuling_Click" />

三、WebUserControl.ascx.cs后台源码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; namespace 用户Web控件
{
public partial class WebUserControl : System.Web.UI.UserControl
{ protected void Page_Load(object sender, EventArgs e)
{ } protected void baidu_Click(object sender, EventArgs e)
{
//获取textbox内容
string txt = TextBox1.Text;
//跳转网页
Response.Redirect("https://www.baidu.com/s?ie=utf-8&wd=" + txt);
} protected void sougou_Click(object sender, EventArgs e)
{
//获取textbox内容
string txt = TextBox1.Text;
//跳转网页
Response.Redirect("https://www.sogou.com/web?query=" + txt);
} protected void sanliuling_Click(object sender, EventArgs e)
{
//获取textbox内容
string txt = TextBox1.Text;
//跳转网页
Response.Redirect("https://www.so.com/s?ie=utf-8&q=" + txt);
}
}
}

到这里用户控件已经创建成功了!

四、可以放到任何网页使用了

直接把WebUserControl.ascx拉到*.aspx就可以直接使用了而且还有功能哦!

Search.aspx顶部会生成一句代码

<%@ Register src="WebUserControl.ascx" tagname="WebUserControl" tagprefix="uc1" %>

下图已经把对应关系画了出来

五、在浏览器中查看,大功告成!

点击搜索就可以啦

WebUserControl.ascx可以在任意的*.aspx使用!

源码下载:点击下载  密码: rpqy

ASP.NET Web用户控件的更多相关文章

  1. ASP.NET Web数据控件

    ASP.NET Web数据控件 1.数据控件简介 这包括数据源控件和格式设置控件,前者使您可以使用 Web 控件访问数据库中的数据,后者使您可以显示和操作ASP.NET 网页上的数据.  2.数据控件 ...

  2. (九)ASP.NET自定义用户控件(2)

    http://www.cnblogs.com/SkySoot/archive/2012/09/04/2670678.html 用户控件 在 .NET 里,可以通过两种方式把自己的控件插入到 Web 窗 ...

  3. Web用户控件

    用户控件是个什么东西?自定义的反复重用的控件集合 注意:创建好用户控件后,必须添加到其他web页中才能显示出来,不能直接作为一个网页来显示,因此也就不能设置用户控件为“起始页”. 用户控件与ASP.N ...

  4. ASP.NET的用户控件

    本文介绍如何在ASP.NET中创建用户控件,控件属性的动态修改以及控件的事件出发机制. 简介ASP.NET的服务端控件使得Web开发工作变得更为简单,功能更为强大.我们介绍过如何在ASP.NET页面中 ...

  5. js清空web用户控件的值

    假设你的用户控件里面有: <asp:DropDownList ID="DropDownList1" runat="server"> <asp: ...

  6. asp.net在用户控件中使用ClientScript

    在用户空间中调用ClientScript.RegisterClientScriptBlock方法 ClientScript的命名空间是System.Web.UI.Page,并且要实例化之后的Page才 ...

  7. asp.net读取用户控件,自定义加载用户控件

    1.自定义加载用户控件 ceshi.aspx页面 <html> <body> <div id="divControls" runat="se ...

  8. (八)ASP.NET自定义用户控件(1)

    http://blog.csdn.net/laodao1/article/details/5897366 ASP.NET自定义控件组件开发 第一章:从一个简单的控件谈起 起始开发ASP.NET自定义控 ...

  9. Web用户控件开发--分页控件

    分页是Web应用程序中最常用到的功能之一,在ASP.NET中,虽然自带了一些可以分页的数据控件,但其分页功能并不尽如人意.本文对于这些数据控件的假分页暂且不表,如有不明白的同学请百Google度之. ...

随机推荐

  1. 菜鸟学习Spring——SpringMVC注解版解析不同格式的JSON串

    一.概述 不同格式的JSON串传到后台来实现功能这个是我们经常要做的一件事,本篇博客就给大家介绍四种不同的JSON串传到后台后台如何用@RequestBody解析这些不同格式的JSON串的. 二.代码 ...

  2. OAuth2.0 入门与进阶

     一.基础知识 1.OAuth产生背景 很多网站.APP 弱化甚至没有搭建自己的账号体系,而是直接使用社会化登录的方式,这样不仅免去了用户注册账号的麻烦.还可以获取用户的好友关系来增强自身的社交功能. ...

  3. Android 环信聊天头像昵称显示解决方案

    从消息扩展中获取昵称和头像 昵称和头像的获取:把用户基本的昵称和头像的URL放到消息的扩展中,通过消息传递给接收方,当收到一条消息时,则能通过消息的扩展得到发送者的昵称和头像URL,然后保存到本地数据 ...

  4. JavaScript性能优化小知识总结(转)

    JavaScript的性能问题不容小觑,这就需要我们开发人员在编写JavaScript程序时多注意一些细节,本文非常详细的介绍了一下JavaScript性能优化方面的知识点,绝对是干货. 前言 一直在 ...

  5. Android DiskLruCache完全解析,硬盘缓存的最佳方案 --转载

    概述 记得在很早之前,我有写过一篇文章 Android高效加载大图.多图解决方案,有效避免程序OOM,这篇文章是翻译自Android Doc的,其中防止多图OOM的核心解决思路就是使用LruCache ...

  6. 数据库系统异常排查之DMV(转)

    来源: http://www.cnblogs.com/fygh/archive/2012/03/12.html 数据库系统异常是DBA经常要面临的情景,一名有一定从业经验的DBA,都会有自己一套故障排 ...

  7. patch 修改有问题的

    diff --git a/include/net/tcp.h b/include/net/tcp.h@@ -1013,8 +1048,13 @@ static inline u32 keepalive ...

  8. ZT C++ 重载、覆盖和隐藏的区别

    重载.覆盖和隐藏的区别 分类: C++ 学习笔记 学习心得与方法 2013-09-26 11:21 50人阅读 评论(0) 收藏 举报 概念区分 “overload”翻译过来就是:超载,过载,重载,超 ...

  9. python入门3 python变量,id(),is运算符

    python变量无需声明数据类型,可以直接赋值使用. 比如: num=100 #整数 str="字符串" #字符串 turple1 =('mon','tue','wed','thu ...

  10. matlab各类数据l图像之间的转化

    matlab各类数据图像之间的转化 rgb类型转化为二值的步骤例如以下: 1.採用命令im2double将rgb类型转化三维的double >> str='E:\programing\Ei ...