0

我正在开发一个 .NET Windows Forms 应用程序。我有一个 CheckedListBox 控件的事件处理程序,如果未选中,它应该从列表中删除一个复选框。我得到了那个部分的工作,但问题是下一个复选框,应该被选中,当我这样做时,它会自动变为未选中。

我已尝试“手动”从 CheckedListBox 中删除所有元素并再次添加它们,确保它们已被选中,但下一个复选框仍未选中。

这非常令人沮丧。

我的代码有问题还是这是一个错误?

    private void checkedListBox_ItemCheck(object sender, ItemCheckEventArgs e)
    {
        if (e.CurrentValue == CheckState.Checked)
        {
            checkedListBox.Items.RemoveAt(e.Index);
        }
    }
4

1 回答 1

0

我找到了解决问题的方法。这有点骇人听闻,但它确实有效。

我刚刚提供了一个 MouseUp 事件处理程序,并在其中循环检查了 checkedListBox 的项目,将未选中的项目设置为选中。

于 2012-06-29T22:32:59.000 回答