如何从main.class调用

时间:2013-07-09 06:43:06

标签: c# visual-studio-2010

我有这个代码,我想从我的主要课程中调用:

public void Display()
{

    Form1 z = new Form1();

    z.listBox1.Items.Add("=============================Summary=============================\n\n");
    z.listBox1.Items.Add("1st: "+Num1+" 2nd #: "+Num2);
    z.listBox1.Items.Add("\n"+" 3rd #: "+Num3+" 4th #: "+Num4);
    z.listBox1.Items.Add("\n"+" 5th #: "+Num5);
    z.listBox1.Items.Add("\n" + "SUM: " + Sum + " DIFF: " + Sub + "\n" + " PROD: " + Multiply + " QOU: " + Divide);

    // result = ("=============================Summary=============================\n\n 1st #: " + Num1 + " 2nd #: " + Num2 + "\n 3rd #: " + Num3 + " 4th : " + Num4 + "\n 5th #: " + Num5 + "\n" + "SUM: " + Sum + " DIFF: " + Sub + "\n" + " PROD: " + Multiply + " QOU: " + Divide);

}

在我的主课程中我尝试这样做:我也尝试将修饰符更改为public,以便我可以使用子类中的列表框..

Class1 zz = new Class1();

zz.Display();

我的问题是我如何从子类调用Display到我的主类?我刚接触C#我会非常感谢你的帮助。 :D

2 个答案:

答案 0 :(得分:1)

我猜“主要类别”是指你的Form1。您在Display中所做的是创建(不可见)Form1(请注意new中的Form1 z = new Form1())。相反,您应该将当前可见的 Form1的引用传递给方法:

public void Display(Form1 z)
{
    z.listBox1.Items.Add("=============================Summary=============================\n\n");
    // etc.
}

在Form1代码中:

Class1 zz = new Class1();
zz.Display(this);

答案 1 :(得分:0)

确保您的子类设置为public。

public class Class1 {
    public void Display {

    }
}

然后你可以从你的主类

中调用该类
public class Main {
    public void SomeMethod() {
         Class1 zz = new Class1();

         zz.Display();
    }
}