编译器错误CS0117

时间:2013-12-04 12:33:41

标签: c# visual-studio-2008

我在一个解决方案中有两个项目,我想从Project 2中的Project1调用一个方法。我已经在Project2中提到了Project1的命名空间。 Project1中的方法如下所示:

public void pauseCapturing(bool checkPause)
    {
        if (checkPause)
        {
            backgroundThread.Suspend();
        }
        else
        {
            backgroundThread.Resume();
        }
    }

在Project2中,我将该方法称为:

private void buttonPause_Click(object sender, EventArgs e)
    {
        buttonPause.Enabled = false;

        NamespaceProject1.Class.pauseCapturing(true);
    }

当我尝试运行代码时,我收到以下错误:

  

错误1'NamespaceProject1.Class'不包含的定义   'pauseCapturing'

我没有找到解决问题的有用答案。

1 个答案:

答案 0 :(得分:2)

您需要创建一个instance来访问另一个类中声明的methods

在您的情况下,您已将方法pauseCapturing()创建为non-static方法,因此需要instance来调用它。

注意:如果该方法被声明为static,那么您可以使用class name来访问它。

试试这个:

NamespaceProject1.Class obj=new NamespaceProject1.Class();
obj.pauseCapturing(true);