InvalidArgument=“0”的值对于“index”无效的解决措施

笔者主要针对ListView的操作中出现的这种问题进行解释,其他组件请自己对应下。

一般出现这种情况是由于数值的超出规定的范围导致的,比如ListView中没有item,这时对item[0]赋值也是不可行的。这种情况要查看下程序之前是不是调用了ListView.items.clear()函数,如果之前调用了,则只能使用ListView.items.Add(new item)进行添加。要谨记赋值只能对已经存在的Item赋值。

或者是item.subItem数量不够。比如笔者之前想只对ListView的第三列进行刷新,如下图。

InvalidArgument=“0”的值对于“index”无效的解决措施_第1张图片

一开始我的程序如下

InvalidArgument=“0”的值对于“index”无效的解决措施_第2张图片

当我开始对第三列赋值时,程序报同样的错误。只加载第三列的代码如下


Items[i]即为第i+1行,SubItems[j]即为第J+1列。

因为我的item只有两个SubItem,当我对第三列,也就是第三个SubItem赋值时,程序会显示超出,这种情况的解决措施就是先预先加载好第三列。

修改后的代码如下:

InvalidArgument=“0”的值对于“index”无效的解决措施_第3张图片

可知对第三列也赋了空值,这样就可以后期进行赋值了。


你可能感兴趣的:(C#,C#,异常,初学者,listview)