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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#winform错误:InvalidArgument=“0”的值对于“index”无效。相关的知识,希望对你有一定的参考价值。

代码是这样的:
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是我自己写的一个方法。

这个是因为listview1中选中变化触发事件的时机造成的
你先选中A,然后去点B,当A失去选中状态时,触发SelectedIndexChanged事件,这个时候,是没有选中项的,然后B获得选中状态,再次触发SelectedIndexChanged事件,这个时候选中项就是B了
事件顺序是 ItemSelectionChanged--〉SelectedIndexChanged--〉ItemSelectionChanged--〉SelectedIndexChanged
参考技术A 你是调试的时候查找到selecteditems的count=0吧?建议你了解下listview的SelectedIndexChanged这个事件,它是指选择的listview项变化时触发的事件,当listview上的项全部被清除的时候listview的SelectedItems还是有可能=0的。 参考技术B 加个判断
if(this.listview1.SelectedItems.Count>0)本回答被提问者采纳
参考技术C 这个问题在网上很多资料的

c++ Winforms文本框错误

【中文标题】c++ Winforms文本框错误【英文标题】:c++ Winforms TextBox error 【发布时间】:2014-04-08 18:44:15 【问题描述】:

我是 C++ 的初学者,我正在尝试在我的 win32 程序中使用 winforms。这是代码:

System::windows::Forms::Label hwl = (gcnew System::windows::Forms::Label());
hwl->Text = L"Hello world";

我在开发 C++ 中有这个错误:

C:\Users\Max.Ana-PC\Documents\c++\win32 hello world\main.cpp 在 函数'int WinMain(HINSTANCE,HINSTANCE,LPSTR,int)': 57 2 C:\Users\Max.Ana-PC\Documents\c++\win32 你好 world\main.cpp [错误] 'System' 尚未声明 57 32 C:\Users\Max.Ana-PC\Documents\c++\win32 你好 world\main.cpp [错误] 预期 ';'在'hwl'之前 58 2 C:\Users\Max.Ana-PC\Documents\c++\win32 你好 world\main.cpp [错误] 'hwl' 未在此范围内声明 28 C:\Users\Max.Ana-PC\Documents\c++\win32 你好 目标“main.o”的 world\Makefile.win 配方失败

我使用了错误的类型(最可能的原因),还是缺少#include <...>?我无法弄清楚问题所在。

【问题讨论】:

【参考方案1】:

您使用的不是 C++,而是 C++/CLI。

如果程序是通过 Visual Studio 中的“Win32 项目”向导创建的,请右键单击项目的属性,在名为“配置属性/常规”或类似内容的下方查看“公共语言运行时支持”是否已启用已启用。

【讨论】:

感谢您的回答,但我的 VS(终极和快递)坏了。我仅限于 dev c++,所以有没有办法在 dev c++ 中做到这一点? 我不这么认为,除非有人创建了一个允许您调用托管代码的包装器(这将是一个单独的问题)。 C++/CLI 是与 C++ 不同的语言。

以上是关于C#winform错误:InvalidArgument=“0”的值对于“index”无效。的主要内容,如果未能解决你的问题,请参考以下文章

C#winform中调用wpf

INSERT INTO 语句 c#.net Winforms Devexpress 中的语法错误?

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

在 C# winforms 中读取 csv 文件时出现数据错误

C# Winforms 选项卡控制选项卡宽度错误

C#WinForm项目怎么转变成WPF项目?