设置变量——构造函数/get/set c#

本文关键字:set get 构造函数 变量 设置 | 更新日期: 2023-09-27 18:10:07

我有段时间没编程了,所以我忘了一些东西。

我有一个"昆德"班。加上一些变量:

class Kunde
{
    private string _navn;
    private string _adresse;
    private int _postnr;
    private string _by;
    private int _telefonnr;
    private int _mobil;
    private string _email;
    private string _land;
    private string _oplysning;
    private int _kundenr;
    //Erhverv:
    private int _cvr;
    private string _firmanavn;
    private string _kontaktperson;
    //Tom konstruktør
    public Kunde()
    {
    }
    //privat
    public Kunde(string navn, string adresse, int postnr, string by, int telefonnr, int mobil, string email, string land, string oplysning, int kundenr)
    {
        _navn = navn;
        _adresse = adresse;
        _postnr = postnr;
        _by = by;
        _telefonnr = telefonnr;
        _mobil = mobil;
        _email = email;
        _land = land;
        _oplysning = oplysning;
        _kundenr = kundenr;
    }
}

}

我的问题是……我有一个带有一些文本字段的winform,但不是每个字段都必须填充数据。

应该在每个变量上做一个get/set,以便能够从另一个类设置变量,还是为每个选项创建一个构造函数?

最好的方法是什么?

设置变量——构造函数/get/set c#

只需为每个成员提供Get访问器和可选的Set访问器。

你必须选择某种形式的数据绑定+验证从你的表单工作。但是Customer类有自己的设计和逻辑。

在c# 4.0中,你可以在调用构造函数时指定属性的值。

var kunde = new Kunde() 
{
    Navn = navn,
    Adresse = adresse,
    // all your properties
};

为您的每个字段创建get/set访问器,然后您可以指定您想要设置的任何属性。

您最好只保留默认构造函数,并为需要读取或设置的每个数据创建公共属性。

你可以保留你的构造函数的参数-但只有那些真正必须为你的每个昆德-n填充的参数。

如果你打算将你的昆德对象直接绑定到一些绑定源并显示它们,例如在一些网格/列表和/或树视图中,你也可以考虑实现一些相关的接口:System.ComponentModel.INotifyPropertyChanged;

,你可以考虑将Attribute-s应用到你的公共属性中——比如System.ComponentModel.DisplayNameAttribute;-它可以在DataGrid中定义固定的头名称,或者可以针对不同的语言进行本地化

public string Adresse { get; private set; }等,你有一个自动变量是只读的,除了在类内。