-1

C# 情况....我已经使用 form1 为另一个类的变量设置了一个值...

班级

 public int _a;
        public int a
                {
                    get
                    {
                        return _a;
                    }
                    set
                    {
                        _a = value;
                    }
}

表格 1

  private void btnchangevalue_Click(object sender, EventArgs e)
        {
class x = new class();
x.a = 1;
}

表格 2

private void btngetvalue_Click(object sender, EventArgs e)
            {
    class x = new class();
   messagebox.show(x.a);
    }

问题是当我试图检索它时,我设置的类变量总是变为空。

4

2 回答 2

0

您应该使用静态变量

静态变量是静态分配的变量,其生命周期贯穿程序的整个运行。

public static int a

发生的事情是每次创建表单对象时都会创建新变量

于 2012-11-21T06:01:47.320 回答
0

好吧,我认为这是因为您每次都在实例化一个新的类实例....创建一个新的类实例一次,然后在单击按钮时使用相同的实例。

class x = new class();
private void btnchangevalue_Click(object sender, EventArgs e)
{
    x.a = 1;
}

private void btngetvalue_Click(object sender, EventArgs e)
{
    messagebox.show(x.a);
}
于 2012-11-21T06:05:45.650 回答