如果选中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)) { }