【发布时间】:2010-05-20 07:47:03
【问题描述】:
如何从用户控件中获取父页面值。 我在页面中有一个用户控件。单击用户控件按钮时,我想在执行方法后从页面中获取一些值。我需要我的用户控件中的这些值。在用户控件中获取页面结果的最佳方法是什么。
【问题讨论】:
如何从用户控件中获取父页面值。 我在页面中有一个用户控件。单击用户控件按钮时,我想在执行方法后从页面中获取一些值。我需要我的用户控件中的这些值。在用户控件中获取页面结果的最佳方法是什么。
【问题讨论】:
原始方式: 首次访问页面属性:
http://msdn.microsoft.com/en-us/library/system.web.ui.control.page.aspx
下一步您可以将 Page 属性转换为您的页面类型(无论它是什么),或者您可以使用 Page.FindControl 方法从其他控件中查找 Page 值。
http://msdn.microsoft.com/en-us/library/31hxzsdw.aspx
在很好的方式中,用户控件应该公开在单击此按钮时触发的事件,并且页面应该订阅此事件并将数据返回给控件。
这就是你要找的吗?
【讨论】:
您可以使用Page 属性来获取对页面对象的引用。但是,引用不是您的特定页面类的类型,因此您不能使用它来访问类中的特定成员而不先转换它:
MySpecificPageClass page = (MySpecificPageClass)Page;
现在您可以使用引用来访问该类的任何公共成员。页面中的控件通常被声明为受保护,因此您可能必须将其访问级别更改为公共才能从外部访问它们。
【讨论】:
【讨论】: