Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- cmd명령어
- 자바스크립트날짜get
- 자바스크립트for문
- speechtoText
- 파이썬
- 다른테이블에속해있습니다
- 장고웹프로젝트
- 장고
- sqlite
- 장고프로젝트
- 이행은이미다른
- webkitrecognition
- speechAPI
- 사례관리
- 자바스크립트forinforof차이
- forof문
- Android
- 오류종류
- 자바스크립트수학
- 장고웹
- PostgreSQL
- 안드로이드
- 개발
- 자바스크립트날짜형식
- Python
- 자바스크립트날짜
- javaScriptError
- R데이터분석
- 이행은이미다른테이블에속해있습니다
- 청소년복지론
Archives
- Today
- Total
EMDI는 지금도 개발중
C# : 콤보박스 이름과 값 각각 넣는 방법 How to set Name and Value in ComboBox at C# 본문
이번 글에서는 C#에서 자주 사용하는 콤보박스에 대한 내용입니다. 콤보박스는 DataTable에 나온 데이터를 이용해서 Name과 Value를 넣는 방법, List에 지정한 데이터를 가지고 넣는 방법 등 다양한 방법으로 넣을 수 있습니다.
1. DataTable에서 나온 데이터를 가지고 콤보박스 넣는 방법
DataTable _dtComboList = new DataTable();
if (!_dtComboList.Columns.Contains("MENU_TYPE_ID")) _dtComboList.Columns.Add("MENU_TYPE_ID");
if (!_dtComboList.Columns.Contains("MENU_TYPE_NM")) _dtComboList.Columns.Add("MENU_TYPE_NM");
for (var i = 0; i < dtResult.Rows.Count; i++)
{
DataRow dr = _dtComboList.NewRow();
dr["MENU_TYPE_ID"] = dtResult.Rows[i]["MENU_TYPE_ID"];
dr["MENU_TYPE_NM"] = dtResult.Rows[i]["MENU_TYPE_NM"];
_dtComboList.Rows.Add(dr);
}
// 처음에는 모든 것을 다 세팅
MENU_TYPE_NM.DataSource = _dtComboList;
MENU_TYPE_NM.DisplayMember = "MENU_TYPE_NM";
MENU_TYPE_NM.ValueMember = "MENU_TYPE_ID";
우선 dtResult라는 DataTable에 데이터가 이미 있다는 가정하에 세팅을 해보겠습니다. ComboBox의 DataSource안에 넣을 DataTable을 별도로 만든 다음 dtResult에서 필요한 데이터만을 담습니다.
그 다음 MENU_TYPE_NM 이라는 콤보박스에 DataSource는 _dtComboList로 클라이언트 화면상에 보일 내용은 MENU_TYPE_NM이고 각각의 내용의 값은 MENU_TYPE_ID을 사용한다고 지정하는 것입니다.
2. List를 사용하여 ComboBox NAME과 Value 지정하기
public class infoType
{
public string Name { get; set; }
public string Value { get; set; }
}
private void initComboBox()
{
//Build a list
var dataSource = new List();
dataSource.Add(new infoType() { Name = "아이디", Value = "I" });
dataSource.Add(new infoType() { Name = "닉네임", Value = "N" });
//Setup data binding
info_type.DataSource = dataSource;
info_type.DisplayMember = "Name";
info_type.ValueMember = "Value";
// make it readonly
info_type.DropDownStyle = ComboBoxStyle.DropDownList;
info_type.SelectedIndex = 0;
}
두번째는 DataTable이 아닌 이미 지정된 Name과 지정된 Value를 가지고 사용하는 방법입니다. dataSource라는 List 안에 고정된 값들을 추가합니다. 그 다음 info_type이라는 콤보박스에 dataSource를 넣고 클라이언트 화면상에 보일 내용은 Name, 실제 값은 Value로 지정해줍니다.
그럼 위의 사진과 같은 콤보박스가 만들어지는 것을 확인할 수 있습니다.
'언어 > C#' 카테고리의 다른 글
Comments