2014-02-27 307 views
-1

我想选中checkedlistbox中的所有选项。选择全部/未选中全部工作正常(下面的代码),但我想取消选择所有选项,当任何项目未选中时,选择所有项目时选择全部。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

当任何项目(不全选)将被选中或取消选中时,将会影响全选选项。选择所有手段所有项目被选中,但任何项目未选中,这意味着所有的项目都没有被选中,所以选择所有选项应该被取消选中。那有意义吗? – 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); 
      } 
     } 
    } 
相关问题