'DataTable'에 해당되는 글 2건

이해하기 쉽게 말하면

DataTable은 리스트뷰 (Detail) 이라고 생각하면 이해가 쉽다.


DataTable tb  = new DataTable();


리스트뷰(Detail)에서 필요한 부분을 생각해보면


ColumnHeader, Rows, Columns가 필요할거고 각 항목별 값이 필요할것이다.


이해하기 쉽도록 풀어서 설명하는것..



 컬럼헤더1

 컬럼헤더2

 일

 1 

 이

 2 

 삼

 3 


위와 같은 형태로 만들고 싶다라고 한다면


row중 첫번째는 string이고, 그 다음은 int이므로 지정한다.

tb.Columns.Add("컬럼헤더1" , typeof(string));

tb.Columns.Add("컬럼헤더2", typeof(int));



DataRow dr = dt.NewRow();

dt에서 새로울 열을 만들것이기 때문에 dt로 만들어 주고


dr["컬럼헤더1"] = "일";

dr["컬럼헤더2"] = 1;

위와같이 지정하면


dr에 두개의 값이 저장된다

dr에 필요한것이 아니고 dt에 필요하므로


dt.Rows.Add(dr);

열을 추가해주면, DataTable에 저장된것이다.


저장된 DataTable(tb)를 ComboBox나 DataSource를 사용하는 곳에 쓸 수 있다.

블로그 이미지

SherryBirkin

,

ComboBox에서 각 항목별로 Tag를 등록해서 보여지는 값이 아닌

특정된 값을 가지고 오고 싶을때 사용 하는 방법


Ex) 일

     이

     삼

     사

     오


위와같이 

콤보박스에 보여지는데

선택했을때 1,2,3,4,5를 가지고 오는 방법..


Items.Add로 추가하지말고


DataTable을 이용해서 DataBinding시켜야 한다.


DataTable은 이해하기 쉽게 말하면 엑셀이나, 리스트라고 생각하면 쉽다


DataTable dt = new DataTable();


//

//    DataTable에 추가될 내용

//


필요한 데이터를 추가 한 후에


아래와 같이 코드를 작성하면


comboBox1.DataSource = dt;

comboBox1.ValueMember = "숨겨놓을 DataTable의 값";

comboBox1.DisplayMember = "보여질 DataTable의 컬럼헤더명";


보여질 값만 콤보박스에 보이고


선택한 항목에서 값을 가지고 오려면


comboBox1.SelectedItem.value로 가지고 오면 1,2,3,4,5를 가지고 올 수 있다.

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

bool 배열 한번에 초기화 하기  (0) 2016.11.23
DataTable 사용방법  (0) 2016.08.14
xml Element  (0) 2016.08.02
TrayIcon 좌클릭, 우클릭 메뉴 가능하게 하기  (0) 2016.04.25
메시지박스 자동 종료하기  (0) 2016.04.24
블로그 이미지

SherryBirkin

,