为了账号安全,请及时绑定邮箱和手机立即绑定

C#winform错误:InvalidArgument=“0”的值对于“index”无效。

C#winform错误:InvalidArgument=“0”的值对于“index”无效。

C#
墨色风雨 2018-08-01 13:12:37
代码是这样的:private void listview1.SelectedIndexChanged(objece sender, EventArgs e){this.LVReload2(int.Parse(this.listview1.SelectedItems[0].SubItems[0].Text.ToString()));}这里这里看selecteditems的count=0,可是这是listview选定后才执行的程序,为什么count会等于0?这个问题应该怎么解决?ps: LVReload2是我自己写的一个方法。
查看完整描述

2 回答

?
慕码人2483693

TA贡献1860条经验 获得超9个赞

这个是因为listview1中选中变化触发事件的时机造成的
你先选中A,然后去点B,当A失去选中状态时,触发SelectedIndexChanged事件,这个时候,是没有选中项的,然后B获得选中状态,再次触发SelectedIndexChanged事件,这个时候选中项就是B了
事件顺序是 ItemSelectionChanged--〉SelectedIndexChanged--〉ItemSelectionChanged--〉SelectedIndexChanged

查看完整回答
反对 回复 2018-08-08
?
撒科打诨

TA贡献1934条经验 获得超2个赞

加个判断
if(this.listview1.SelectedItems.Count>0)

查看完整回答
反对 回复 2018-08-08
  • 2 回答
  • 0 关注
  • 1867 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信