0

我有列表视图控件。有一个删除选定项目的选项。用户删除一个项目后。我需要以编程方式选择删除项目或第一个项目之前的前一个项目。我试过了

listView.Items[0].Selected = true;
listView.Select(); 

没有选择或突出显示任何项目。可能是什么问题?

4

3 回答 3

2

ListView.Select 不会选择项目集合中的项目。
正确的语法是

if(this.listView1.Items.Count > 0)
{
    this.listView1.Focus();
    this.listView1.Items[0].Focused = true;
    this.listView1.Items[0].Selected = true;
}

在此处查看 MSDN

于 2012-06-09T09:44:52.930 回答
0

listView 的 Items Collection 没有 Select() 方法。而是调用 listView 的 Select() 方法。但是,在大多数情况下,它应该在没有它的情况下工作。

listView.Items[0].Selected = true; 
listView.Select(); 

顺便说一句,“它不工作”并不能很好地解释是什么导致了你的麻烦。下次再具体一点。

于 2012-06-09T09:09:34.270 回答
0

您发布的代码可以正常工作。您是否正在做其他事情,例如将焦点放在另一个控件上?listView 的默认行为是在失去焦点时隐藏选定的项目。

将 listView 的属性HideSelection设置为 false 并查看您是否能够看到选择。

于 2012-06-09T09:21:42.643 回答