5. C# WinForm 열거

5. 열거

  • 미리 정의된 값 중 하나만 보유할 수 있는 변수를 선언합니다.

  • 프로그램 개발 시 오류 감소 및 가독성 향상
  • 값은 0부터 순차적으로 지정되지만 명시적으로 설정할 수 있음


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace sutdy_5_Enum
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private enum enumDay
        {
            Monday,
            Tuesday,
            Wednesday,
            Thursday,
            Friday,
            Saturday,
            Sunday
        }

        private enum enumTime
        {
            Morning,
            Afternoon,
            Evening
        }

        // form이 로딩 될 때
        private void Form1_Load(object sender, EventArgs e)
        {
            lboxDay.Items.Add(enumDay.Monday.ToString());
            lboxDay.Items.Add(enumDay.Tuesday);
            lboxDay.Items.Add(enumDay.Wednesday);
            lboxDay.Items.Add(enumDay.Thursday);
            lboxDay.Items.Add(enumDay.Friday);
            lboxDay.Items.Add(enumDay.Saturday);
            lboxDay.Items.Add(enumDay.Sunday);

            lboxTime.Items.Add(enumTime.Morning);
            lboxTime.Items.Add(enumTime.Afternoon);
            lboxTime.Items.Add(enumTime.Evening);

        }

        private void btnResult_Click(object sender, EventArgs e)
        {
            // xx와 Monday(요일) Afternoon에 만나기로 약속 했습니다.

string strResult = tboxName.Text + "와 " + lboxDay.SelectedItem.ToString() + "(요일) " + lboxTime.SelectedItem.ToString() + "에 만나기로 약속 했습니다.

"; tboxResult.Text = strResult; } private void btnResult2_Click(object sender, EventArgs e) { string strResult = String.Format("{0}와 {1}(요일) {2}에 만나기로 약속 했습니다.

", tboxName.Text, lboxDay.SelectedItem.ToString(), lboxTime.SelectedItem.ToString()); tboxResult.Text = strResult; } } }