是否可以在ASCX中呼叫ASPX页面中的函数 ?如果可以,该怎么操作?

解决方案 »

  1.   

    可以
    .ASPX.CS:public string str()
    {

    return "dsfsdfdsf";
    }
    .ASCX.CS:    WebForm1  aa=new WebForm1();
    Response.Write(aa.str());
      

  2.   

    如果你一定要打破良好结构的系统规范,肯定可以做。如果高级语言不支持,你甚至可以直接使用汇编。从软件工程角度,不应该。ascx应该设置一个事件(一个delegate)通知调用者(将操作的一部分委托给调用者完成)即可。最好永远坚持工程化的思想。
      

  3.   

    可以啊,public方法可以直接用对象访问
      

  4.   

    我可以肯定地说,如果我所控制的团队中的程序员坚持在ascx中设计一个public的属性(包括field)用来传入page类型的对象,我会把它请出项目组。一些基本的理念远远比底层的代码或者方法重要。
      

  5.   

    我是菜鸟,但愿你不要把我请出CSDN
      

  6.   

    我是菜鸟,但愿你不要把我请出CSDN
    太精辟了!!支持搂主 这是个交流的平台 帮助的平台 而不是谁的团队
      

  7.   

    只是因为这其实是基本素质(有的人进门直接用脚踢,有的人知道用把手),只是给一个参考。你不知道应该什么约束最重要什么不重要,leader、架构师难道不知道吗?
      

  8.   

    这本来就是回答“是否可以在Ascx.....”的问题。
      

  9.   

    aa.aspx.cs
    class aa : Page
    {
        public string GetStr(){
           return "test";
        }
    }aaaa.ascx.cs
    class aaaa{
         public void GetControl(){//返回Page的Handle
               aa c = (aa)this.Parent;
               return aa;
         }
         public string GetPage_GetStr{
             return GetControl().GetStr();//调用Page的GetStr();
         }
    }
      

  10.   

    XXXaa.aspx.cs
    class aa : Page
    {
        public string GetStr(){
           return "test";
        }
    }aaaa.ascx.cs
    class aaaa:UserControl
    {
         public aa GetControl(){//返回Page的Handle
               aa c = (aa)this.Parent;
               return aa;
         }
         public string GetPage_GetStr{
             return GetControl().GetStr();//调用Page的GetStr();
         }
    }
      

  11.   

    :)
    ------------------------------------
    我的团队:www.51team.com欢迎访问,有志者共谋事,每天都有惊喜,SOHO