C# I´;我有两种不同的形式,我需要一个全局变量,将在这两种形式的工作

C# I´;我有两种不同的形式,我需要一个全局变量,将在这两种形式的工作,c#,winforms,C#,Winforms,我现在做的是我有两个表格。一张表格名为“银行”,第二张表格名为“家庭” 以“bank”的形式,我想要一个变量,它包含你有多少钱的值。我还希望这个变量在“Home”形式下工作,在这里有一个游戏,你可以使用这些钱 不确定如何定义变量,以便它们可以互换使用并得到更新。那么如何定义它们呢?您可以将表单引用传递给另一个表单构造函数,以便可以引用类的实例。假设您有BankForm和HomeForm: public class BankForm { private HomeForm homeForm

我现在做的是我有两个表格。一张表格名为“银行”,第二张表格名为“家庭”

以“bank”的形式,我想要一个变量,它包含你有多少钱的值。我还希望这个变量在“Home”形式下工作,在这里有一个游戏,你可以使用这些钱


不确定如何定义变量,以便它们可以互换使用并得到更新。那么如何定义它们呢?

您可以将表单引用传递给另一个表单构造函数,以便可以引用类的实例。假设您有
BankForm
HomeForm

public class BankForm
{
    private HomeForm homeForm = null;

    public BankForm(HomeForm homeForm)
    {
        this.homeForm = homeForm;
    }

    private void OnButton1_Click(...)
    {
        this.homeForm. //here you can access properties of home form
    }
见:

或者,如果这些值是全局值,则可以将其定义为静态类来存储各种值:

static class Global
{
    private static string _money  = "";

    public static string Money
    {
        get { return _money; }
        set { _money = value; }
    }
}

请参阅:

这不是最佳做法,但您可以在银行表单中定义静态变量(请注意,这种方式只能有一个银行表单)

更正确的方法是创建一些其他类(AccountService)来获取用户余额,并以两种形式创建此类的实例