我在另一个线程中有一个列表视图,我以安全的线程安全方式向其中添加项目,如下所示:
listView1.Invoke(new AddTolstDiscoveredDevices(AddDiscoveryEntry), ReceiveString);
但是当我试图获取选定的项目时,它说索引0
无效。
我用这个:
string IpAdr = listView1.SelectedItems[0].SubItems[0].Text;
错误 ="InvalidArgument=Value of '0' is not valid for 'index'.\r\nParameter name: index"
然后因为它在另一个线程上,我试图这样调用:
public string GetCurrentItem(int location)
{
if (this.listView1.InvokeRequired)
{
getCurrentItemCallBack d = new getCurrentItemCallBack(GetCurrentItem);
return this.Invoke(d, new object[] { location }).ToString();
}
else
{
return this.listView1.Items[location].Text;
}
}
当我打电话时,我得到了同样的错误。
我不明白出了什么问题。
任何帮助表示赞赏。谢谢。