首先使用Visual Studio创建一个C#的Web项目,如下:
选中项目右键单击,【添加】——>【新建项】,创建Web用户控件
是一个ascx文件,初始创建源码内容如下:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs" Inherits="WebApplication1.WebUserControl1" %>
在【设计】页面添加两个控件:
其源代码如下:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs" Inherits="WebApplication1.WebUserControl1" %>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="搜索" />
双击按钮,进入WebUserControl1.ascx.cs文件中,为按钮添加事件,整个文件代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication1
{
public partial class WebUserControl1 : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Write(TextBox1.Text);
}
}
}
即点击按钮就会在页面上输出文本框内的内容。
创建用户控件完成后就是使用用户控件。
在项目的根目录下创建一个Web窗体
然后将WebForm1.aspx切换到【设计】视图
将WebUserControl1.ascx(即用户控件)从资源管理器拖动到WebForm1.aspx的视图页面上:
WebForm1.aspx视图变成如下:
其源码也如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>
<%@ Register src="WebUserControl1.ascx" tagname="WebUserControl1" tagprefix="uc1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<uc1:WebUserControl1 ID="WebUserControl11" runat="server" />
<div>
</div>
</form>
</body>
</html>
比较初始创建源码:
运行WebForm1.aspx页面,浏览器效果如下: