public class BasePage: Page
{
protected myUserCtrl muc;
protected override void OnInit(EventArgs e)
{
base.OnInit (e);
muc = (myUserCtrl)this.LoadControl("~/BasePage/myUserCtrl.ascx");
IPlaceHolderProvider ipc = this as IPlaceHolderProvider;
if(ipc != null && ipc.GetPlaceHolder() != null)
{
ipc.GetPlaceHolder().Controls.Add(muc);
}
else
{
this.Controls.Add(muc);
}
}
}
//======================================================
public interface IPlaceHolderProvider
{
PlaceHolder GetPlaceHolder();
}
//======================================================
public class ChildPage : BasePage, IPlaceHolderProvider
{
protected System.Web.UI.WebControls.PlaceHolder test1;
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
#region IPlaceHolderProvider Members
public PlaceHolder GetPlaceHolder()
{
// TODO: Add ChildPage.GetPlaceHolder implementation
return this.test1;
}
#endregion
}
夫习拳艺者,对已者十之七八,对人者,仅十之二三耳。拳艺之道,深无止境。得其浅者,一人敌,得其深者,何尝不万人敌耶!
我的Google Picasa相册
我的新BLOG