첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170
using DevExpress.Xpf.Mvvm;

/// <summary>
/// 바인딩 가능한 객체
/// </summary>
public class BindableObject : BindableBase
{
    //////////////////////////////////////////////////////////////////////////////////////////////////// Field
    ////////////////////////////////////////////////////////////////////////////////////////// Private

    #region Field

    /// <summary>
    /// 문자열 속성 1
    /// </summary>
    private string stringProperty1;

    /// <summary>
    /// 문자열 속성 2
    /// </summary>
    private string stringProperty2;

    /// <summary>
    /// 문자열 속성 3
    /// </summary>
    private string stringProperty3;

    /// <summary>
    /// 문자열 속성 4
    /// </summary>
    private string stringProperty4;

    /// <summary>
    /// 문자열 속성 5
    /// </summary>
    private string stringProperty5;

    /// <summary>
    /// 문자열 속성 6
    /// </summary>
    private string stringProperty6;

    /// <summary>
    /// 문자열 속성 7
    /// </summary>
    private string stringProperty7;

    /// <summary>
    /// 문자열 속성 8
    /// </summary>
    private string stringProperty8;

    /// <summary>
    /// 문자열 속성 9
    /// </summary>
    private string stringProperty9;

    /// <summary>
    /// 문자열 속성 10
    /// </summary>
    private string stringProperty10;

    #endregion

    //////////////////////////////////////////////////////////////////////////////////////////////////// Property
    ////////////////////////////////////////////////////////////////////////////////////////// Public

    #region 문자열 속성 1 - StringProperty1

    /// <summary>
    /// 문자열 속성 1
    /// </summary>
    public string StringProperty1
    {
        get
        {
            return this.stringProperty1;
        }
        set
        {
            SetProperty(ref this.stringProperty1, value, () => StringProperty1);
        }
    }

    #endregion

    #region 문자열 속성 2 - StringProperty2

    /// <summary>
    /// 문자열 속성 2
    /// </summary>
    public string StringProperty2
    {
        get
        {
            return this.stringProperty2;
        }
        set
        {
            SetProperty(ref this.stringProperty2, value, "StringProperty2");
        }
    }

    #endregion

    #region 문자열 속성 3 - StringProperty3

    /// <summary>
    /// 문자열 속성 3
    /// </summary>
    public string StringProperty3
    {
        get
        {
            return this.stringProperty3;
        }
        set
        {
            SetProperty(ref this.stringProperty3, value, () => StringProperty3, OnStringProperty3Changed);
        }
    }

    #endregion

    #region 문자열 속성 4 - StringProperty4

    /// <summary>
    /// 문자열 속성 4
    /// </summary>
    public string StringProperty4
    {
        get
        {
            return this.stringProperty4;
        }
        set
        {
            SetProperty(ref this.stringProperty4, value, () => StringProperty4, () => OnStringProperty4Changed());
        }
    }

    #endregion

    #region 문자열 속성 5 - StringProperty5

    /// <summary>
    /// 문자열 속성 5
    /// </summary>
    public string StringProperty5
    {
        get
        {
            return this.stringProperty5;
        }
        set
        {
            if(SetProperty(ref this.stringProperty5, value, () => StringProperty5))
            {
                // 속성이 변경되면 SetProperty 메소드가 true를 반환한다.
            }
        }
    }

    #endregion

    #region 문자열 속성 6 - StringProperty6

    /// <summary>
    /// 문자열 속성 6
    /// </summary>
    public string StringProperty6
    {
        get
        {
            return this.stringProperty6;
        }
        set
        {
            if(this.stringProperty6 == value)
            {
                return;
            }

            this.stringProperty6 = value;

            RaisePropertyChanged("StringProperty6");
        }
    }

    #endregion

    #region 문자열 속성 7 - StringProperty7

    /// <summary>
    /// 문자열 속성 7
    /// </summary>
    public string StringProperty7
    {
        get
        {
            return this.stringProperty7;
        }
        set
        {
            if(this.stringProperty7 == value)
            {
                return;
            }

            this.stringProperty7 = value;

            RaisePropertyChanged(() => StringProperty7);
        }
    }

    #endregion

    #region 문자열 속성 8 - StringProperty8

    /// <summary>
    /// 문자열 속성 8
    /// </summary>
    public string StringProperty8
    {
        get
        {
            return this.stringProperty8;
        }
        set
        {
            SetProperty(ref this.stringProperty8, value, () => StringProperty8, () => RaisePropertiesChanged(() => StringProperty1, () => StringProperty2));
        }
    }

    #endregion

    #region 문자열 속성 9 - StringProperty9

    /// <summary>
    /// 문자열 속성 9
    /// </summary>
    public string StringProperty9
    {
        get
        {
            return this.stringProperty9;
        }
        set
        {
            if(SetProperty(ref this.stringProperty9, value, () => StringProperty9))
            {
                RaisePropertiesChanged(() => StringProperty1, () => StringProperty2);
            }
        }
    }

    #endregion

    #region 문자열 속성 10 - StringProperty10

    /// <summary>
    /// 문자열 속성 10
    /// </summary>
    public string StringProperty10
    {
        get
        {
            return this.stringProperty10;
        }
        set
        {
            if(SetProperty(ref this.stringProperty10, value, () => StringProperty10))
            {
                RaisePropertiesChanged("StringProperty", "StringProperty2");
            }
        }
    }

    #endregion

    //////////////////////////////////////////////////////////////////////////////////////////////////// Method
    ////////////////////////////////////////////////////////////////////////////////////////// Private

    #region 문자열 속성 3 변경시 처리하기 - OnStringProperty3Changed()

    /// <summary>
    /// 문자열 속성 3 변경시 처리하기
    /// </summary>
    private void OnStringProperty3Changed()
    {
    }

    #endregion

    #region 문자열 속성 4 변경시 처리하기 - OnStringProperty4Changed()

    /// <summary>
    /// 문자열 속성 4 변경시 처리하기
    /// </summary>
    private void OnStringProperty4Changed()
    {
    }

    #endregion
}
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요