C#

18.C#_WinForm - CheckedListBox ( 체크 리스트박스 )

Godffs 2009. 8. 28. 13:08
반응형

CheckedListBox에서 선택된 값을 MessageBox와 DataGridView에 출력하는 예제입니다.


        메뉴추가 :
                FrmMain - 컨트롤 - 공용컨트롤 - 체크리스트박스

FrmCheckedListBox.Designer.cs

[그림18-1]

        private System.Windows.Forms.DataGridView dataGridView;
        private System.Windows.Forms.CheckedListBox chkListBox;
        private System.Windows.Forms.Button btnSelect;
        private System.Windows.Forms.Label lbtTitle;

FrmCheckedListBox.cs
private void FrmCheckedListBox_Load(object sender, EventArgs e)
{
        //CheckedListBox에 Items 추가
        string[] fav = { "C#", "ASP.NET", "WPF", "Silverlight", "WCF" };

        for (int i = 0; i < fav.Length; i++)
        {
                //짝수만 체크된 상태
                if (i % 2 != 0) { //짝수가 아니라면...
                    chkListBox.Items.Add(fav[i], true); //true
                }
                else {
                    chkListBox.Items.Add(fav[i]); //false
                }
        }
}

private void btnSelect_Click(object sender, EventArgs e)
{
        List<Favorite> lst = new List<Favorite>();
        string msg = "";

        for (int i = 0; i < chkListBox.CheckedItems.Count; i++)
        {
                lst.Add(new Favorite()
                {
                        Name = chkListBox.CheckedItems[i].ToString()
                });
                msg += chkListBox.CheckedItems[i].ToString();
        }

        dataGridView.DataSource = lst; //배열, 컬렉션, 리스트
        MessageBox.Show(msg);
}

public class Favorite
{
        public string Name { get; set; }
}

결과확인

[그림18-2]

18WinFrmMain.zip
다운로드

반응형