求助,自定义控件方法调用的问题
假设b.ascx为自定义的控件,a.aspx为父控件,父控件中有方法show(),现在我想在b.ascx的后台调用show(),怎么实现?
利用反射机制可以访问
在b.ascx的后台
protected void btn_Click(object sender, EventArgs e)
{
System.Web.UI.Page motherPage = this.Page;
Type pageType = motherPage.GetType();
//这里用到了反射
System.Reflection.MethodInfo mi = pageType.GetMethod("show"); //"show"为a.aspx页面文件的public方法
if (mi != null)
{
string txtValue = "你好";
string ddlvalue = "Buddy";
mi.Invoke(motherPage, new object[] { ddlvalue, txtValue });
}
}