2014-02-27 8 views
-1

checklistbox에서 모든 옵션을 선택하고 싶습니다. 모두 선택/선택 취소 모두 잘 작동합니다 (아래 코드).하지만 항목을 선택하지 않은 경우 모두 선택 옵션의 선택을 취소하고 모든 항목을 선택하면 모두 선택합니다.checkedlistbox 선택을 취소하면 선택 항목이 해제됩니다.

이것은 내가 작업 한 코드입니다. 이 코드는 선택하려는 경우

private void checkedListBox1_ItemCheck(object sender, ItemCheckEventArgs e) 
     { 
      if (e.Index == 0 && e.NewValue == CheckState.Unchecked) 
      { 
       for (int it = 1; it < this.checkedListBox1.Items.Count; it++) 
       { 
        this.checkedListBox1.SetItemChecked(it, false); 
       } 
      } 
      if (e.Index == 0 && e.NewValue == CheckState.Checked) 
      { 
       for (int it = 1; it < this.checkedListBox1.Items.Count; it++) 
       { 
        this.checkedListBox1.SetItemChecked(it, true); 
       } 
      } 
     } 
+0

사랑하는 당신이 체크 아래의 모든 항목의 선택을 취소 선택/싶어 목? –

+0

_ "모든 항목을 선택 해제하고 싶습니다."_ ... _ "모든 항목을 선택하면 모두 선택하십시오."_ 그 말이 맞습니까? –

+0

어떤 항목 (모두 선택하지 않음)이 선택되거나 선택 취소되면 select all 옵션에 영향을 미칩니다. 모든 항목을 선택하면 모든 항목이 선택되지만 모든 항목이 선택되지 않은 모든 항목이 선택되어 있지 않으므로 모든 옵션을 선택하지 않으면 선택 취소해야합니다. 말이 돼? – user2841795

답변

1

가 /이 시도 체크 항목

아래의 모든 항목을 선택 해제입니다 :

private void checkedListBox1_ItemCheck(object sender, ItemCheckEventArgs e) 
    { 
     if (e.NewValue == CheckState.Unchecked) 
     { 
      for (int it = e.Index+1; it < this.checkedListBox1.Items.Count; it++) 
      { 
       this.checkedListBox1.SetItemChecked(it, false); 
      } 
     } 
     if (e.NewValue == CheckState.Checked) 
     { 
      for (int it = e.Index+1; it < this.checkedListBox1.Items.Count; it++) 
      { 
       this.checkedListBox1.SetItemChecked(it, true); 
      } 
     } 
    } 
관련 문제