将变量表单传递给类并从另一个表单中检索它

时间:2012-11-21 05:49:22

标签: c#

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

CLASS

 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);
    }

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

3 个答案:

答案 0 :(得分:0)

您应该使用静态变量

静态变量是一个静态分配的变量,其生命周期延伸到整个程序运行。

public static int a

正在发生的是新变量 每次都创建 您创建表单对象

答案 1 :(得分:0)

您可以点击此链接。我认为它会解决你的问题。

http://www.codeproject.com/Questions/286641/how-to-inherit-one-form-properties-to-another-form

答案 2 :(得分: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);
}