怎样在用户控件中调用父页面中的方法

友回复:要导入的命名空间:using System.Reflection;
用户控件:
private void Button1_Click(object sender, System.EventArgs e)
{
//用反射方法动态调用父页面的方法
System.Web.UI.Page p = this.Page;
Type pageType = p.GetType();
MethodInfo mi = pageType.GetMethod(“SetLabel”);
mi.Invoke(p,new object[]{“aaa!”});

}
父页面:
public void SetLabel(string str)
{
this.Label1.Text = str;;
}
友回复:在asp.net小项目中,最好不要使用反射,会降低性能.能避免最好.

在用户控件中调用父页面的方法,不如在用户控件中,定义好一个供父页面调用的接口方法.
友回复:用户控件
public event EventHandler ccc;

需要调用父方法的地方使用
if (ccc!= null)
{
ccc(this, EventArgs.Empty);
}

父页面
PageLoad中
UserControl1.ccc = new EventHandler(aaa);

ccc事件
protected void aaa(object sender, EventArgs e)
{
}

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2010年1月1日
下一篇 2010年1月1日

相关推荐