첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
유용한 소스 코드가 있으면 icodebroker@naver.com으로 보내주시면 감사합니다.
블로그 자료는 자유롭게 사용하세요.

■ RepositoryItemRadioGroup 클래스 : AddEnum<T> 메소드를 사용해 열거형 항목 추가하기

------------------------------------------------------------------------------------------------------------------------


TestProject.zip


Day.cs

 

 

namespace TestProject

{

    /// <summary>

    /// 요일

    /// </summary>

    public enum Day

    {

        /// <summary>

        /// 일요일

        /// </summary>

        Sun = 1,

 

        /// <summary>

        /// 월요일

        /// </summary>

        Mon = 2,

 

        /// <summary>

        /// 화요일

        /// </summary>

        Tue = 3,

 

        /// <summary>

        /// 수요일

        /// </summary>

        Wed = 4,

 

        /// <summary>

        /// 목요일

        /// </summary>

        Thu = 5,

 

        /// <summary>

        /// 금요일

        /// </summary>

        Fri = 6,

 

        /// <summary>

        /// 토요일

        /// </summary>

        Sat = 7

    }

}

 

 

MainForm.cs

 

 

using System;

 

using DevExpress.XtraEditors;

 

namespace TestProject

{

    /// <summary>

    /// 메인 폼

    /// </summary>

    public partial class MainForm : XtraForm

    {

        //////////////////////////////////////////////////////////////////////////////////////////////////// Constructor

        ////////////////////////////////////////////////////////////////////////////////////////// Public

 

        #region 생성자 - MainForm()

 

        /// <summary>

        /// 생성자

        /// </summary>

        public MainForm()

        {

            InitializeComponent();

 

            this.radioGroup.Properties.AddEnum<Day>(new Converter<Day, string>(GetDayString));

 

            this.radioGroup.SelectedIndex = 1;

        }

 

        #endregion

 

        //////////////////////////////////////////////////////////////////////////////////////////////////// Method

        ////////////////////////////////////////////////////////////////////////////////////////// Private

 

        #region 요일 문자열 구하기 - GetDayString(day)

 

        /// <summary>

        /// 요일 문자열 구하기

        /// </summary>

        /// <param name="day">요일</param>

        /// <returns>요일 문자열</returns>

        private string GetDayString(Day day)

        {

            Type type = day.GetType();

 

            Type underlyingType = Enum.GetUnderlyingType(type);

 

            string result = Convert.ChangeType(day, underlyingType).ToString() + ". " + day.ToString();

 

            if(day == Day.Sat || day == Day.Sun)

            {

                result += " (weekend)";

            }

 

            return result;

        }

 

        #endregion

    }

}

 

------------------------------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker
TAG

댓글을 달아 주세요