我定义了多个master,并在Form_Load事件上有一些常用功能。现在我声明一个派生自System.Web.UI.MasterPage的customMasterPage类,并将所有常用功能放入其中。但我想覆盖onPage_Load()并想要打印到Dervived类的控件。
假设我有一个customMaster类
class customMasterClass:System:web.UI.MasterPage
{
override onLoad()
{
base(e)
//I want to use following child class controls(lblName) here to print
// lblName.text=""
}
}
class child1:customMaster
{
//Controls are..
//Label:id=lblName;
Form_load()
{
lblName.text="test1 test1";
}
}
class child2:customMaster
{
//Controls are..
//Label:id=lblName;
Form_load()
{
lblName.text="test2 test2";
}
}
如何做到这一点。请给我你的建议
先谢谢
答案 0 :(得分:0)
基础课程对儿童课程一无所知。话虽这么说,您可以将基类定义为具有可覆盖的方法,派生类可以使用这些方法设置特定的内容,例如:
public class BaseClass
{
public override OnLoad(object sender, EventArgs e)
{
base.OnLoad(e);
SetLabels(); //This will call the appropriate child class method
}
public virtual void SetLabels()
{
}
}
public class ChildClass1 : BaseClass
{
public override void SetLabels()
{
//Set the label here
}
}
public class ChildClass2 : BaseClass
{
public override void SetLabels()
{
//Set the label here
}
}