如何在页面的代码隐藏中获取usercontrol的值
答
如果我理解正确,问题是您正尝试访问用户控件的页面page_load中的用户控件的StudentId属性?
如果是这种情况,那么在用户控件触发下拉列表中的SelectedIndexChanged事件之前,您很可能正在尝试读取数据。
最简单的解决方案是将读取属性的代码移动到Page_PreRender事件。这个事件发生在页面生命周期的后期,并且在所有的用户事件都有机会触发之后。
作为一种替代方法,您可以在用户控件中公开您自己的事件(我将称之为“UserControlDropDownChanged”),并让您的SelectedIndexChanged事件处理程序中的代码触发用户控件的UserControlDropDownChanged事件。在页面中,在page_load或page_init期间,您将注册一个事件处理程序以从用户控件中侦听UserControlDropDownChanged ...并在该事件处理程序中执行下拉列表值更改时所需的任何功能。
我提供了一个example of how to use events这样回答这里的另一个问题,如果你不熟悉这种技术。
你为什么要编辑出你问题中真正有意义的部分?你不想要一个答案吗? – 2009-12-14 14:58:40