一、如何在页面中访问在Site.Master中引用到的用户控件。
这里假设给定三个页面:Site.Master、Default.aspx和WebUserControl.ascx。Site.Master是Default.aspx页面中使用到的页面模板,WebUserControl是Site.Master模板页中使用的用户自定义控件类。
问题:在Default.aspx.cs代码中访问到Site.Master中用到的WebUserCotrol实例。
解决办法:
1、在Default.aspx页面中增加下面的标签说明:
<%@ Register src="WebUserControl.ascx" tagname="WebUserControl" tagprefix="uc1" %>
2、在Default.aspx.cs中需要访问到该用户控件的地方使用下面的代码:
WebUserControl uc = (WebUserControl)Master.FindControl("WebUserControl1");
if (uc != null)
{
//具体的操作代码
}
注:WebUserControl1是Site.Master中使用的WebUserControl实例ID。
二、如何在页面中控制在Site.Master中引用到的用户控件。
问题:如前所述,我们已经可以访问到模板页中用到的用户控件实例,那么如何控制用户控件内的组件呢,比如设置其中标签(Label)组件的文本