gpt4 book ai didi

c# - 多个删除选中的列表框项目

转载 作者:行者123 更新时间:2023-11-30 13:57:24 25 4
gpt4 key购买 nike

您好,我在这个网站上找到了如何删除 checklistbox
中的多个复选框对象 How to delete multiple checked items from CheckedListBox?

但它对我不起作用。
在我确实在 Global.answer 类中保存了一些东西之前,我以前处理这个项目的合作伙伴。我试过像这样修改该脚本:

for (int i = checkedListBoxAnswers.Items.Count - 1; i >= 0; i--) {
if (checkedListBoxAnswers.GetItemCheckState(i) == CheckState.Checked)
{
Global.answers.RemoveAt(checkedListBoxAnswers.SelectedIndex);
}
}

它可以正确删除一个复选框,但是当我检查两个或多个复选框时,它出错了......我想知道如何正确地做到这一点。

这是我的删除按钮

private void buttonDelete_Click(object sender, EventArgs e)
{
if (checkedListBoxAnswers.SelectedIndices.Count < 1)
{
MessageBox.Show(this, "Please select answer to be deleted");
}
else
{
for (int i = checkedListBoxAnswers.Items.Count - 1; i >= 0; i--)
{
if (checkedListBoxAnswers.GetItemCheckState(i) == CheckState.Checked)
{
Global.answers.RemoveAt(checkedListBoxAnswers.SelectedIndex);
}
}
updateCheckListBoxAnswers();
}
}

最佳答案

事实上这里是正确的代码:

 CheckedListBox.CheckedItemCollection checkedItemColl = checkedListBoxAnswers.CheckedItems;

for (int i = checkedItemColl.Count; i > 0; i--)
{
int index = checkedItemColl[i - 1];
checkedListBoxAnswers.Items.Remove(index);

}

关于c# - 多个删除选中的列表框项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21177679/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com