gpt4 book ai didi

C#:用户代码未处理 ArgumentOutOfRangeException

转载 作者:行者123 更新时间:2023-11-30 18:48:06 24 4
gpt4 key购买 nike

我有一个 if 语句,说明如果网页有特定文本,则删除列表框中的所选项目并向下迭代到下一个。

我写了一些代码,但当我尝试它时,我不断得到:

ArgumentOutOfRangeException was unhandled by usercode

这是更详细的错误:

{"InvalidArgument=Value of '1' is not valid for 'SelectedIndex'.\r\nParameter name: SelectedIndex"}

这是我的代码:

        listBox1.Items.Remove(listBox1.SelectedItem);
listBox1.SelectedIndex = + 1;

编辑:

感谢大家的帮助!我通过不删除项目并使其向下迭代来解决问题。

最佳答案

您必须测试您尝试选择的项目是否确实存在。

int index = listBox1.SelectedIndex;
listBox1.Items.RemoveAt(index);
If (index < listBox1.Items.Count) {
listBox1.SelectedIndex = index;
}

编辑:如果您想在循环中删除项目,最好从末尾开始,因为删除一个项目会改变后续项目的位置。向上循环会让您在每次删除一个项目时跳过一个项目。

for (int i = listBox1.Items.Count - 1; i >= 0; i--) {
if (listBox1.Items[i].ToString() == "whatever") {
listBox1.Items.RemoveAt(i);
}
}

关于C#:用户代码未处理 ArgumentOutOfRangeException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8979068/

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