隐藏窗体后,WinForms ListView SelectedIndices为空

时间:2012-02-21 20:30:30

标签: .net winforms listview

我有一个ListView坐在.NET中的表单上。

在隐藏表单之前,SelectedIncides存在且有效:

void buttonOK_click()
{
    Assert(listView.SelectedIndices.Count > 0);
    DialogResult = DialogResult.OK;
}

但是在模态形式返回之后:

form1.ShowDialog();
Assert(form1.listView.SelectedIndices.Count > 0); 

第二个断言失败了。

一旦列表视图所在的表单被隐藏(虽然没有被销毁/处置/释放),如何阅读SelectedIndices的{​​{1}}?

2 个答案:

答案 0 :(得分:1)

您可以尝试免费软件组件Better ListView Express或完整的Better ListView。我们在这里解决了 SelectedIndices 问题,以及常规.NET ListView的其他已知错误。

答案 1 :(得分:1)

您可以尝试在form1上拥有一个包含List(或等效)所选索引的公共变量吗?让form1在表单结束事件上设置它。一旦控件传回原始表单,您可以直接访问它吗?