我已经找了一个小时了,找不到最好的解决办法。我正在从VB.NET迁移到C#窗体和C# WPF。算了吧..。因此,我为C#窗体使用了这段代码,它可以工作,但在C# WPF中不起作用。
if (ListView1.SelectedItems.Count > 0)
{
for (lcount = 0; lcount <= ListView1.Items.Count - 1; lcount++)
{
if (ListView1.Items[lcount].Selected == true)
{
var2 = lcount;
break;
}
}
}
这就是我希望在列表框中单击项目索引的方式。我在.SELECTED中有错误
请帮帮忙。
发布于 2014-01-24 08:45:05
你可以从SelectedIndex
那里得到listView。无需遍历所有项,因为根据您的代码,您似乎对任何选定项的索引感兴趣。
var2 = ListView1.SelectedIndex;
或
简单地说,如果只对第一个索引感兴趣,这将有效:
if (lst.SelectedItems.Count > 0)
{
var2 = lst.Items.IndexOf(lst.SelectedItems[0]);
}
发布于 2017-05-26 13:25:46
如果使用的是.NET紧凑型框架,则不支持SelectedIndex
。对于一般的解决方案,我更喜欢SelectedIndices
ListView.SelectedIndexCollection indices = lst.SelectedIndices;
if (indices.Count > 0)
{
// Do something with indices[0]
}
发布于 2016-05-02 16:54:04
对于Visual 2015,SelectedIndex
似乎不可用。相反,您可以使用SelectedIndices[x]
,其中x=0
将为您提供第一个选定的项:
listView.SelectedIndices[0]
还可以将MultipleSelect
属性设置为false
,一次只允许选择一个项。
https://stackoverflow.com/questions/21327931
复制相似问题