我正在使用 ascx页面作为 aspx页面中的弹出窗口。我可以像这样在我的aspx页面中调用任何ascx函数:
ASCX PAGE.Function()
但是现在我想从我的ascx文件中调用aspx文件功能,为此,我必须创建一个aspx文件实例,例如:
AspxPage af = new AspxPage ()
af.Function()
但是我无法通过此方法实现目标,我想在不创建新实例的情况下调用该函数。
请指导我。谢谢。我在C#Visual Studio 2017中工作
答案 0 :(得分:1)
(1)确保页面继承自它们都可以到达的通用类(MySpecialPageClass)(该类本身应该继承自通常的基础页面类) (2)将要公开给控件的方法添加到该类上,使其公开(MySpecialFunction)。 (3)在控件中,您需要执行自己的“ IWantToCallThePageFunctionNowMethod”(伪代码,不适用于复制+粘贴,如果在c#或vb.net中工作,则没有指示)
function IWantToCallThePageFunctionNowMethod()
{
object thePage = this.Page
if (checkTypeOfPageIsRightClass(thePage))
{
MySpecialPageClass theRightPage = (MySpecialPageClass)thePage
theRightPage.MySpecialFunction(myParameter)
}
}