当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

    摘要: private void btncreatefile_click(object sender, system.eventargs e) { string filename="d:\\testxml\\createfile.xml"; xmldocument docxml = new xmldocument(); xmlelement rootnode=docxml.cr......
 ·怎么实现 “自动填充”    »显示摘要«
    摘要: 怎么实现 “自动填充”?比如在ie里输入micr,就显示出“microsoft" ( 或“www.microsoft.com") ......


如何在一个类(class A)所定义的其他类(class B)的对象b1中调用类(class A)的函数和变量

如何在一个类(class   A)所定义的其他类(class   B)的对象b1中调用类(class   A)的函数和变量?  
  例:如何编写代码使(class   B)的对象b1可以调用(class   A)的函数GetAge(),及获得变量strName?  
  public   class   A  
  {    
          public   string   strName;  
          private   int   nAge;  
          private   B   b1   =   new   B();  
   
          public   A()  
          {  
          }  
   
          public   int   GetAge()  
          {  
                  return   nAge;  
          }  
  }  
   
  public   class   B  
  {  
          public   int   c;  
   
          public   B()  
          {  
          }  
  }  
     
 

NO.1   作者: bahamut

you   cant   do   this,public   methods   and   members   of   class   A   can   be   access   only   by   instance   of   class   A

NO.2   作者: lzh4481

public   class   A  
  {    
          public   string   strName;  
          private   int   nAge;  
          private   B   b1   =   new   B();  
   
          public   A()  
          {  
          }  
   
          public   int   GetAge()  
          {  
                  return   nAge;  
          }  
  }  
   
  public   class   B  
  {  
          public   int   c;  
          private   A   objA;  
   
          public   B(A   sender)  
          {  
                  objA   =   sender;    
                  //在这里可以用sender调用A的所用公共成员            
          }  
          public   void   f()  
          {  
                  //在这里可以用objA调用A的所用公共成员    
          }  
   
  }  
 

NO.3   作者: lzh4481

上面有问题,必须在A里创建B的一个实例。  
   
  public   class   A  
  {    
          public   string   strName;  
          private   int   nAge;  
          private   B   b1   =   new   B();  
   
          public   A()  
          {  
          }  
   
          public   int   GetAge()  
          {  
                  return   nAge;  
          }  
           
          private   void   CreateInstanceOfB()  
          {  
                  B   objB   =   new   B(this);  
          }  
  }  
   
  先创建A的一个实例,然后调用CreateInstanceOfB方法,创建B的一个实例,B的这个实例就可以访问A的公共成员。  
 

NO.4   作者: lzh4481

举个实用的例子:  
   
  在MDI父窗体里定义一个菜单miOpenChild,给菜单添加事件处理程序:  
  private   void   miOpenChild_Click(object   sender,   System.EventArgs   e)  
  {  
  MDIChildForm   frm   =   new   MDIChildForm(this);  
  frm.MdiParent   =   this;  
  frm.Show();  
  }  
   
  将子窗体的构造函数改为:  
  public   MDIChild   (MDIParent   sender)  
  {  
            //在这里就可以利用sender访问MDIParent的公共成员  
  }

NO.5   作者: MarsXia

一个类(class   A)所定义的其他类(class   B)的对象b1可以调用类(class   A)的静态成员(static修饰词)


    摘要: 如何隐藏pagecontrol上的切换button??? ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE