본문 바로가기
C#

04# 속성(Property) 객체 생성 시 초기화

by NaHyungMin 2016. 4. 18.
클래스 생성 시, 객체 초기화 방법

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
public class DefaultValuesTest
{    
    public DefaultValuesTest()
    {               
        foreach (PropertyDescriptor property in TypeDescriptor.GetProperties(this))
        {
            DefaultValueAttribute myAttribute = (DefaultValueAttribute)property.Attributes[typeof(DefaultValueAttribute)];
 
            if (myAttribute != null)
            {
                property.SetValue(this, myAttribute.Value);
            }
        }
    }
 
    public void DoTest()
    {
        var db = DefaultValueBool;
        var ds = DefaultValueString;
        var di = DefaultValueInt;
    }
 
 
    [System.ComponentModel.DefaultValue(true)]
    public bool DefaultValueBool { get; set; }
 
    [System.ComponentModel.DefaultValue("Good")]
    public string DefaultValueString { get; set; }
 
    [System.ComponentModel.DefaultValue(27)]
    public int DefaultValueInt { get; set; }
}
cs