2012-12-29 3 views
2

저는 초보자입니다. 아마도 내 질문은 당신 중 일부에게 순진 해 보일 것입니다.ChekedListBox에 일부 레코드를 표시하는 방법

ChekedListBox에 일부 레코드를 표시해야합니다.

난 데이터 셋 테이블 (카탈로그)를 가지고

enter image description here

내가 ChekedListBox 컨트롤 를 데이터 테이블 (컬러 열)의 콘텐츠를 표시 할 필요가있다.

구현 방법을 알려주세요.

답변

1

CheckedListBox does not support binding를 표시하므로 예상대로이 작동하지 않습니다

CheckedListBox1.DataSource = tempDataSet.Tables("Cat") 
CheckedListBox1.DisplayMember = "Color" 
CheckedListBox1.ValueMember = "ID" 

당신은 대신 Bindable CheckedListBox를 사용할 수 있습니다.

SqlDataAdapter da = new SqlDataAdapter("SELECT NAME AC_CODE FROM AccountM where compcode='" + Compcls.Gcomp_cd + "'", con); 

DataSet ds = new DataSet(); 
da.Fill(ds, "AccountM "); 
checkedListBox1.DataSource = ds; 

checkedListBox1.SelectedValue = "AC_CODE"; 
checkedListBox1.SelectedItem = "NAME"; 
+0

Neolisk에 따라 설정 다음 ((ListBox) CheckedListBox1) .DataSource = tempDataSet.Tables ("Cat"); ((ListBox) CheckedListBox1) .DisplayMember = "Color"; ((ListBox) CheckedListBox1) .ValueMember = "ID : 개인적으로 BindingList를 보겠습니다. – MethodMan

+0

@DJKRAZE : Intellisense에서 DataSource 및 유사 항목을 제안하지 않았지만 사용할 수 있으므로 컴파일러가 사용자를 중지시키지 않습니다. 당신은 DataSource를 통해 바인딩 할 때 CheckedListBox를 사용하여 문제를보고합니다. [Here is one] (http://www.codeproject.com/Articles/4009/Workaround-for-disappearing-checks- in-the-CheckedL). – Neolisk

1

: 그런 다음 속성 창을 사용하여 디자인 타임에 바인딩 할 수 있습니다 db에 checkedListBox1.SelectedValu e를 저장하면 다음과 같이 수행 할 수 있습니다.

  1. 데이터를 데이터 테이블에로드하십시오 (예 : myDt
  2. 루프의 각 DataRow를 귀하의 데이터 테이블 & 당신이 작업을 수행하는 경우 확인 된 상태 dr 값이 실제로 작동 것이 도움이

    foreach (DataRow dr in myDt.Rows) 
    { 
        checkedListBox1.SelectedValue = dr[0].ToString(); 
        checkedListBox1.SetItemChecked(checkedListBox1.SelectedIndex, true); 
    } 
    

희망 ...

관련 문제