如果选中C#Checkedlistbox
是否可以将复选框中的.Checked ==应用于checkedlistbox?
如果以复选框的方式执行它不起作用
if(checkedListBox1.Items[2].Checked==true) { }
你需要的是方法GetItemCheckState
。
用法如下:
if(checkedListBox1.GetItemCheckState(2) == CheckState.Checked) { }
你可以这样使用它
if (checkedListBox1.CheckedItems.Contains("ItemWithIndex2")) { MessageBox.Show("Test"); }
试试像……
checkedListBox1.GetItemChecked(i) foreach(int indexChecked in checkedListBox1.CheckedIndices) { // The indexChecked variable contains the index of the item. MessageBox.Show("Index#: " + indexChecked.ToString() + ", is checked. Checked state is:" + checkedListBox1.GetItemCheckState(indexChecked).ToString() + "."); }
GetItemCheckState()
返回一个布尔值。 所以你可以使用如下:
if(checkedListBox1.GetItemCheckState(index) == true) { }
其中index是一个整数值,表示CheckedListBox的行索引
GetItemChecked()
返回一个布尔值。 所以你可以使用它如下:
if(checkedListBox1.GetItemChecked(index) == true) { }
其中index
是一个整数值,表示checkedListBox1
的行索引。
我不确定我理解你的问题,你想检查列表框中是否至少检查了1个项目? 如果是这样你就可以做到
if(checkedListBox1.Items.Any(item=>item.Checked)) { }