Wanna be Brilliant Full-Stack Developer

C# Winforms Enum ( 열거형) 본문

Some Memos/C#

C# Winforms Enum ( 열거형)

Flashpacker 2023. 4. 5. 15:15

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 study_Enum
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        enum enumDay
        {
            Monday,    
            Tuesday,  
            Wednesday, 
            Thursday, 
            Friday,   
            Saturday,
            Sunday,
        }
        enum enumTime
        {
            Morning,
            Afternoon,
            Evening,
        }
    }
}

이것으로 무엇을 할것인가? 실행을 할때 정해놓은 Enum값들을 Listbox에 넣어줄것이다.

이벤트 시점이  처음에 저값을 넣어줘야하는 시기가 실행을 할때이다.

폼이 로딩할때라고 생각하면 된다.

그러면 폼을 더블클릭하면 되는데!?

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

        enum enumDay
        {
            Monday,    
            Tuesday,  
            Wednesday, 
            Thursday, 
            Friday,   
            Saturday,
            Sunday,
        }
        enum enumTime
        {
            Morning,
            Afternoon,
            Evening,
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            lboxDay.Items.Add(enumDay.Monday);
            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);
        }
    }
}
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 study_Enum
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        enum enumDay
        {
            Monday,    
            Tuesday,  
            Wednesday, 
            Thursday, 
            Friday,   
            Saturday,
            Sunday,
        }
        enum enumTime
        {
            Morning,
            Afternoon,
            Evening,
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            lboxDay.Items.Add(enumDay.Monday);
            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)
        {
            //준호와 Monday(요일) Afternoon에 보기로 했습니다.

            string strResult = tboxName.Text + "와" + lboxDay.SelectedItem.ToString() + "(요일)" +
                lboxTime.SelectedItem.ToString() + "에 보기로 했습니다.";
            tboxResult.Text = strResult;
        }
    }
}

문자를 이렇게 더하면 헷갈릴 수 있다. 그래서 format을 맞춰서 해보려고 한다.

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

 

  private void btnResult2_Click(object sender, EventArgs e)
        {
            string strResult = String.Format("{0}와 {1}(요일) {2}에 보기로 했습니다.", "준호", "Monday", "Afternoon");
        }
준호가 0자리에 ,Monday가 1번자리에 Afternoon이 2번자리에 들어간다! 

이제 이름만 바꾸면 된다!

 

  private void btnResult2_Click(object sender, EventArgs e)
        {
            string strResult = String.Format("{0}와 {1}(요일) {2}에 보기로 했습니다.", "tboxName.Text", "lboxDay.SelectedItem.ToString()", "lboxTime.SelectedItem.ToString()");
        }

 

이렇게 만드는것을 더 추천한다고 한다.

 

 

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 study_Enum
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        enum enumDay
        {
            Monday,    
            Tuesday,  
            Wednesday, 
            Thursday, 
            Friday,   
            Saturday,
            Sunday,
        }
        enum enumTime
        {
            Morning,
            Afternoon,
            Evening,
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            lboxDay.Items.Add(enumDay.Monday);
            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)
        {
            //준호와 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;
        }
    }
}

 

'Some Memos > C#' 카테고리의 다른 글

C# WinForms 조건문(if else, switch)  (0) 2023.04.06
C# Winforms 배열(Array)  (0) 2023.04.06
C# WINFORMS 주석의 중요성  (0) 2023.04.05
C# WinForms get,set 사용법 04/05  (0) 2023.04.05
C# WinForm 메모  (0) 2023.03.30