首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >获取在ListView中选择的项的索引

获取在ListView中选择的项的索引
EN

Stack Overflow用户
提问于 2014-01-24 08:35:24
回答 6查看 116.3K关注 0票数 12

我已经找了一个小时了,找不到最好的解决办法。我正在从VB.NET迁移到C#窗体和C# WPF。算了吧..。因此,我为C#窗体使用了这段代码,它可以工作,但在C# WPF中不起作用。

代码语言:javascript
复制
 if (ListView1.SelectedItems.Count > 0)
            {
                for (lcount = 0; lcount <= ListView1.Items.Count - 1; lcount++)
                {
                    if (ListView1.Items[lcount].Selected == true)
                    {
                        var2 = lcount;
                        break;
                    }
                }
            }

这就是我希望在列表框中单击项目索引的方式。我在.SELECTED中有错误

请帮帮忙。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2014-01-24 08:45:05

你可以从SelectedIndex那里得到listView。无需遍历所有项,因为根据您的代码,您似乎对任何选定项的索引感兴趣。

代码语言:javascript
复制
var2 = ListView1.SelectedIndex;

简单地说,如果只对第一个索引感兴趣,这将有效:

代码语言:javascript
复制
if (lst.SelectedItems.Count > 0)
{
    var2 = lst.Items.IndexOf(lst.SelectedItems[0]);
}
票数 24
EN

Stack Overflow用户

发布于 2017-05-26 13:25:46

如果使用的是.NET紧凑型框架,则不支持SelectedIndex。对于一般的解决方案,我更喜欢SelectedIndices

代码语言:javascript
复制
ListView.SelectedIndexCollection indices = lst.SelectedIndices;
if (indices.Count > 0)
{
    // Do something with indices[0]
}
票数 8
EN

Stack Overflow用户

发布于 2016-05-02 16:54:04

对于Visual 2015,SelectedIndex似乎不可用。相反,您可以使用SelectedIndices[x],其中x=0将为您提供第一个选定的项:

代码语言:javascript
复制
listView.SelectedIndices[0]

还可以将MultipleSelect属性设置为false,一次只允许选择一个项。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21327931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档