访问已加载的用户控件

时间:2012-11-06 09:06:58

标签: c# asp.net

我正在开发一个Asp.net项目,我正在将两个用户控件加载到另一个ascx控件中。首先,我正在加载control1.ascx然后加载control2。在control2.ascx中加载它们后,我想访问一个重载control1的一些数据的函数。我正在使用以下代码执行此操作:

 private ASP.control1_ascx tree; 
 tree = (ASP.control1_ascx)LoadControl("control1.ascx");
 tree.aload();

当我调试代码时,它似乎调用了aload()函数并更新了数据。但问题是在调用函数后我看不到它们,而是在回发事件后我可以看到正确的数据。为什么会这样?当我调用函数时,是否有解决方案可以看到它们?

1 个答案:

答案 0 :(得分:1)

您是否尝试在每个用户控件中创建委托事件,然后使用此事件重新绑定数据?

在您的usercontrol中:

public delegate void RefreshRequired(object sender, any other params to pass to event method)

public event OnRefreshRequired OnRefreshRequired;

在你的PageXoad of ASPX

UserControl.OnRefreshRequired+= TAB TWICE;

在此方法中实现代码以刷新用户控件中的数据