2012-04-25 1 views
1

나는 체크리스트 박스를 찍은 winform에서 일하고있다. 체크리스트 상자의 체크 된 항목을 배열리스트에 저장하고 싶습니다. 체크리스트 상자에 5 개의 항목이 있으며, itemcheck 이벤트를 처리하고 싶습니다.CheckListBox의 ItemCheck 이벤트가 항상 뒤에있는 이유는 무엇입니까?

이벤트가 발생하면 이벤트가 발생하지만 이벤트 처리기 항목 수가 2가되면 항목 수가 0으로 다시 남아 있습니다. 다음 번에이 프로세스를 반복하면 항목 수가 1이됩니다.하지만 이제는 3 항목을 체크했습니다.

미챠가 연결된 질문에 설명 된 바와 같이
private void CLB_Course_ItemCheck(object sender, ItemCheckEventArgs e) 
     {    
      List<string> items = new List<string>();    
      foreach (string ItemsChecked in CLB_Course.CheckedItems) 
      { 
       items.Add(ItemsChecked); 
      } 
     } 
+2

여기를 읽으십시오 : http://stackoverflow.com/questions/4454058/no-itemchecked-event-in-a-checkedlistbox –

답변

1

, CheckedListBox가 잘되지 않습니다 :

아래 내가 사용하고있는 코드가이 코드에 제발 도와주세요. 당신이 선택한 항목의 목록을 원하는 경우

, 당신은 당신이 CheckedListBox 얻을 것과 같은 동작을 취득 true로 설정할 수 CheckBoxes 속성이 대신 ListView 사용을 고려할 수 있지만 추가 기능을 ItemChecked인데,이 이벤트는 실제로 ListView 컨트롤에 존재하기 때문입니다. 이벤트 리스너에서

, 당신은 모든리스트 뷰의 CheckedIndices, 또는 CheckedItems 속성을 사용하여 항목을 선택 (ItemCheckedEventArgs에서)를 e.Item 속성 체크 항목을 얻거나 얻을 수 있습니다.

0

항목의 검사 상태가 변경 될 때 해당 이벤트가 발생하기 때문에 발생합니다. 이벤트가 발생할 때까지 값이 업데이트되지 않습니다.

관련 문제