从表单中更改类中的值并从另一个类中读取它可能吗?

时间:2013-05-17 02:43:13

标签: c#

我必须承认,就编码而言,我是初学者。

现在,我想通过按boolean中的按钮更改class中的Main Form值。

但我也想从另一个类中读取更改后的值。

这甚至可能吗?我正在使用C# btw。

因为现在我遇到的问题是使用Class1 class = new Class1();为form1和调用它的类创建了类的唯一版本。

1 个答案:

答案 0 :(得分:1)

您可以尝试两个选项

<强> 1。使用静态属性:  通过使用static属性,只存在一个副本,而不是特定于对象。

示例:

public class Class1
{
    public static bool MyBoolProperty { get; set; }
}

您可以将其用作

        //Set value 
        Class1.MyBoolProperty = true;

        //Get value
        var currentBoolVal = Class1.MyBoolProperty;

<强> 2。使用单例实例:这里只创建了一个对象。

示例:

public class Class1
{
    private Class1()
    {
    }

    private static Class1 _object;

    public static Class1 Instance
    {
        get
        {
            if (_object == null)
                _object = new Class1();
            return _object;
        }
    }

    public bool MyBoolProperty { get; set; }
} 

您可以将其用作:

        //Set value
        Class1.Instance.MyBoolProperty = true;

        //Get value
        var currentBoolVal = Class1.Instance.MyBoolProperty;