擦除绑定到Winforms表单的对象的所有属性值?

Joh*_*n M 0 c# properties winforms

在C#Winforms(3.5)应用程序中,我添加了一个类,其中包含许多属性(get/set),用于存储来自12个表单长的进程的值.

在表单12之后,我想清除存储类中的所有属性值,以便下一个用户在表单1启动进程时不会意外记录值.

是否可以擦除/销毁/处置类中的所有属性值?

我的班级看起来像这样:

private static int battery;
public int Battery
{
    get { return storeInspectionValues.battery; }
    set { storeInspectionValues.battery = value; }
}
Run Code Online (Sandbox Code Playgroud)

Bry*_*tts 16

你可以创建一个新的类实例吗?您最终会得到完全相同的对象.

编辑以回应评论:

让我们说这是你的班级:

public class Foo
{
    private int _battery;
    private string _someOtherValue;

    public int Battery
    {
        get { return _battery; }
        set { _battery = value; }
    }

    public string SomeOtherValue
    {
        get { return _someOtherValue; }
        set { _someOtherValue = value; }
    }
}
Run Code Online (Sandbox Code Playgroud)

你说你想"擦除/破坏/处置类中的所有属性值".我认为这意味着您要将所有属性重置为其默认值.这意味着这样的事情:

foo.Battery = 0;
foo.SomeOtherValue = null;
Run Code Online (Sandbox Code Playgroud)

这样做可以做到这一点:

foo = new Foo();
Run Code Online (Sandbox Code Playgroud)

现在foo是一个实例,其属性都具有默认值.这会解决你的问题吗?

  • 简单有效. (3认同)