日期:2013-12-05  浏览次数:21179 次

有的时候想在页面中调用这个页面的用户控件的方法
有的时候想在页面中设置这个页面的用户控件中的控件的值
下面是解决方案
首先建立一个用户控件uc.ascx
放置一个Label并且设置它的值为test
this.Label1.Text="test";
在这个用户控件内加入一个方法
public void aa()
{
this.Label1.Text="在页面中调用这个页面的用户控件的方法成功";
}
创建一个webform导入这个用户控件
<%@ Register TagPrefix="aa" TagName="bb" Src="uc.ascx" %>
在页面中包含
<aa:bb id="top" runat="server"></aa:bb>
页面中放置两个按钮
第一按钮事件中加入
((uc)this.FindControl("top")).Label1.Text="在页面中设定用户控件中控件的值成功";//这个Label1是用户控件中的Label
第二个按钮的事件中加入
((uc)this.FindControl("top")).aa();

以上2个按钮分别完成前面说的2个操作。上面代码中uc为用户控件的类名(也就是用户控件的名字)如果不在同一个命名控件,前面加上命名控件的名字。