非静态字段,方法或属性需要对象引用

时间:2012-10-24 03:26:55

标签: c#

我开始使用C#和XNA。我现在要做的就是弄清楚如何在多个类之间拆分游戏代码,而不是将它们全部塞进一个类中。

我已经设法让其他一切正常工作,但我不能为我的生活弄清楚这一点。我已经做了大约两个小时的浏览以获得答案,并且只是因为我似乎遇到了不同类型的问题而变得更加沮丧。

错误是:“非静态字段,方法或属性Summoner_Quest.TextControl.Draw()需要对象引用”

我可以在这里查看我的Game1课程:http://pastebin.com/Wq9S1sFu

可以在此处查看我的TextControl类:http://pastebin.com/49fSSm27

我看到的一些答案涉及将方法从静态更改为非静态或反之亦然。使我的TextControl方法静态是我最接近“修复”它,但随后编译器对我大喊大叫,直到我删除了方法中的大约一半代码。但我很确定这不是我正在寻找的解决方案。

感谢您抽出宝贵时间阅读我的帖子。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您需要创建TextControl类的实例。等等。

  

protected override void Draw(GameTime gameTime)           {

        GraphicsDevice.Clear(Color.CornflowerBlue);



        // TODO: Add your drawing code here

        TextControl textControl = new TextControl();  //Creating the text control
        textControl.Draw();


        base.Draw(gameTime);

    }