C# 在列表视图中设置所选索引

C# 在列表视图中设置所选索引,c#,winforms,listview,selectedindex,C#,Winforms,Listview,Selectedindex,我在Win窗体上有一个listview,需要通过编程设置所选索引。显然,ListView没有可设置的SelectedIndex属性。还有其他方法吗?您可以通过设置属性来选择或取消选择项目,例如:this.listView1.Items[2]。Selected=true 编辑 要仅选择一项,只需将列表视图的MultiSelect属性设置为false,然后选择新项即可。显然,列表视图没有可设置的SelectedIndex属性 事实上,这是合乎逻辑的,因为您可以选择多个项目 因此,它确实具有Selec

我在Win窗体上有一个listview,需要通过编程设置所选索引。显然,ListView没有可设置的SelectedIndex属性。还有其他方法吗?

您可以通过设置属性来选择或取消选择项目,例如:
this.listView1.Items[2]。Selected=true

编辑

要仅选择一项,只需将
列表视图的
MultiSelect
属性设置为
false
,然后选择新项即可。

显然,列表视图没有可设置的SelectedIndex属性

事实上,这是合乎逻辑的,因为您可以选择多个项目

因此,它确实具有
SelectedItems
selectedDices
属性;两者都是只读的

选择一个项目,只需将其
Selected
属性设置为
true

listView1.Items[someItemIndex].Selected = true; 
如果ListView的
MultiSelect
属性为false,则将取消选择所有其他项。如果为true,则将该项添加到所选项集中


要一次取消选中所有项目,请使用
listView1.SelectedIndices.Clear()
列表视图1.选择editems.Clear()

有一个事件-SelectedIndexChanged,您可以将其配置为执行所需操作。
listView1.Items[0]。Selected=true
@TaW你应该把它作为答案贴出来,再加上一点解释。看来你是同时贴评论和我的答案的+您的答案是:)要仅选择一项,似乎将
ListView
MultiSelect
属性设置为false并仅选择新项就足够了。是。但可能仍然需要multiselect,只需重置选择。我试着涵盖所有方面。。调用
Clear
一次比清除并重新设置MulitSelect,imo更清晰。在编写代码时,我没有想到将
MultiSelect
属性测试为
false
,现在代码似乎没用了。