用户控件[usercomments.ascx]<%@ Control Language="C#" AutoEventWireup="true" CodeFile="usercomments.ascx.cs" Inherits="usercomments" %> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <asp:Button ID="Button1" runat="server" οnclick="Button1_Click" Text="Button" /> [usercomments.ascx.cs]using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; public partial class usercomments : System.Web.UI.UserControl { public string username; protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { TextBox1.Text = username; } public string myname { get { return username; } set { username = value; } } } 调用页面[test.aspx]<%@ Page Language="C#" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="test" %> <!--这句引用是必不可少的,否则找不到控件--> <%@ Reference Control="~/UserControls/usercomments.ascx" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>无标题页</title> </head> <body> <form id="form1" runat="server"> </form> </body> </html> [test.aspx.cs]using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; public partial class test : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //首先找到页面上的form1 Control ct = Page.FindControl("form1"); //load出用户控件,强制转化为原来的类型,才能访问其属性,调用其方法 usercomments cl = (usercomments)Page.LoadControl("~/usercontrols/usercomments.ascx"); cl.myname = "good"; //把用户控件添加到页面form1的控件列表中去 ct.Controls.Add(cl); } }