c#对ListView进行某列的排序时,报错InvalidArgument=“1”的值对于“index”无效。

某一天写一个关于读取数据后显示在ListView中,点击ListView的某一列表头可以按此列进行排序的小程序,过程不难写,网上查一查基本都没问题。过程中我碰到两个问题,因为初学C#,问题都有点小白。

第一个就是,点击列表后触发排序。点击的事件是ColumnClick,作为一个小白,我找了许久才发现原来其隐藏在ListView的属性的小闪电里,原来小闪电就是列表的所有事件,呜呜。

第二个问题就是报错InvalidArgument=“1”的值对于“index”无效。事情是这样滴,我有一个读取数据的按钮,每次我点击列排序之后,再点读取数据,就会报这个错误。后来查询了好多。原来是因为,数据如果有变动,那么之前要去掉排序,否则是会要报错滴。所以遇到此问题,在查询数据后往ListView插入之前,记得写上一句this.listView1.Sorting = System.Windows.Forms.SortOrder.None; 当然也有不同的写法,看你怎么排序的,意思主要就是去掉之前的排序。这样索引值就不会报错啦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值