0

为什么我在 LIST 中收到此错误:非静态字段、方法或属性需要对象引用...

       List<string> LIST = new List<string>(); 

       public static void GDT(RichTextBox ResultRTB1)
        {
            foreach (string Items in LIST)
            {
                //do something
            }

        }
4

3 回答 3

2

声明变量 LIST 时没有使用 static 关键字。这样就被认为是包含类的实例成员。像 GDT 这样的静态方法不能在不声明类实例的情况下使用类的实例成员。你可以解决你的问题声明

static List<string> LIST = new List<string>();

或从 GDT 方法中删除 static 关键字,但不知道您使用此方法的上下文,并且此变量无法给出建议

于 2013-09-03T20:49:27.427 回答
1

尝试这个

 private static List<string> LIST = new List<string>();

您会收到错误,因为您无法访问静态方法中的实例成员。您需要一个对象实例来访问它。

或者试试这个

public static void GDT(RichTextBox ResultRTB1)
{
    YourType instance = new YourType();
    foreach (string Items in instance.LIST)
    {
        //do something
    }
}
于 2013-09-03T20:47:57.233 回答
0

您正在尝试在静态方法中引用实例成员,或者将您的列表声明为静态,或者在您的方法中创建一个类实例,然后从那里访问该列表。

于 2013-09-03T20:50:32.237 回答