반응형
Today
Total
Recent Posts
Recent Comments
Archives
11-24 00:43
«   2024/11   »
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
관리 메뉴

UD_park's IT story

[C# Winform] Winform ComboBox 개념과 사용법 본문

IT - Language/C# Windows Forms

[C# Winform] Winform ComboBox 개념과 사용법

kingllzn 2018. 7. 13. 11:44
반응형
SMALL

[이 포스팅은

예제로 배우는 C# 프로그래밍의

http://www.csharpstudy.com/

내용을 발췌하였습니다]

 

[보기용 예제 소스 코드에서 오류 발생시에

댓글이나 방명록에 글을 남겨 주시면 수정/보완하겠습니다]

 

 

이번에는 Winform의 ComboBox에 대해

포스팅을 해보도록 하겠습니다

 

콤보 박스는 여러개의 아이템들 중에서

단 하나만 고를 때 사용되는 아이입니다

 

콤보 박스의 컨트롤은 Items Collection입니다

따라서 Items 속성에서 값을 지정하고 추가하고

수정할 수 있습니다

 

그리고 콤보 박스는 3가지 유형을 가지고 있습니다

첫 번째는 바로 Simple 모드

두 번째는 DropDown 모드

세 번째는 DropDownList 모드입니다

 

하나씩 설명을 하자면 DropDown은

Item값들 중에서 사용자가 하나만 선택하거나

아니면 사용자가 직접 입력해 넣을 수있습니다

 

DropDownList는 목록에서 나오는 것들만

사용자가 선택할 수있습니다

 

Simple 모드는 DropDown과 비슷하지만

따로 화살표를 눌러 목록을 내려서 확인하지 않고

애초에 모든 목록이 아래에 모두 나타나는

기능을 수행합니다

 

 

 

자세한 설명들은 예제로 만든

소스 코드를 보며 설명을 이어가겠습니다

 

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

        private void Form1_Load(object sender, EventArgs e)
        {
            string[] data = { "사과", "토마토", "포도", "배", "복숭아" };
            // comboBox1은 Simple
            // comboBox2는 DropDown
            // comboBox3는 DropDownList

            // 각 콤보박스에 데이타를 초기화
            comboBox1.Items.AddRange(data);
            comboBox2.Items.AddRange(data);
            comboBox3.Items.AddRange(data);

            // 처음 선택값 지정. 첫째 아이템 선택
            comboBox1.SelectedIndex = 0;
            comboBox2.SelectedIndex = 0;
            comboBox3.SelectedIndex = 0;

            // simple 콤보 박스의 목록을 초기화 하고 다시 목록 추가
            /*
            comboBox1.Items.Add("Item 1");
            comboBox1.Items.Clear();
            comboBox1.Items.AddRange(new string[] { "1", "2", "3" });
            */
        }

        private void comboDropDown_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (comboBox2.SelectedIndex >= 0)
            {
                this.itemSelected = comboBox2.SelectedItem as string;
            }
        }

        private string itemSelected;
    }
}

 

설명을 시작하자면 22번 줄은

각 3가지 유형의 콤보박스에서 사용할

목록을 문자열 배열로 선언했습니다

 

28번 줄 부터는 각 콤보박스에

선언한 배열을 대입하여 데이터를

초기화하였습니다

 

33번 줄 부터는 각 콤보박스에

실행 직후 가장 첫 번째로 나타낼

값들로 0번 째인 '사과'를 표시하도록

지정하였습니다

 

39 - 41번 코드는 비록 주석처리 했지만

콤보 박스 유형 중에서 Simple에

목록들을 초기화하고 새로 지정하는

코드입니다

 

45번 줄 부터 아래까지 코드 줄은

SelectedIndexChaged 이벤트의 핸들링으로

사용자가 콤보 박스의 목록 중에서 다른 아이템을

선택할 때 발생하는 이벤트 입니다

 

위 소스 코드에서는 아이템이 선택 될 때,

해당 아이템의 값을 클래스의 필드에

넣을 수 있도록 작성한 코드입니다

 

 

아래에 올린 결과 화면을

참고해 주시기 바랍니다

 

 

그럼 이상으로 Winform ComboBox의

개념과 사용법에 대한 포스팅을 마치도록

하겠습니다

 


혹시 다른것에 대해 궁금하신게

있으시다면

댓글에 달아주세요

 

아는것이면 친절하게 쉽게

모르는것이면 또 제가 알아내서

친절하게 쉽게 포스팅해서

설명해드리겠습니다

 

 

반응형
LIST
Comments