C#中listView和.SelectedItem的帮助

本文关键字:帮助 SelectedItem listView | 更新日期: 2023-09-27 17:59:01

在我的winform(C#)中,我有两列的listView,用于显示搜索数组的结果,这是数组项的基本细节(数组中的所有数据都是字符串类型)。我可以向列表视图添加和删除项目,但我希望能够获得在列表视图中单击的行的值。

我计划使用它来更新显示完整的条目信息,但我无法获得所选项目的值。我在其他地方阅读,看到有人提到.SelectedIndex属性,但当我尝试编码时,此属性不可用。

我可以使用两个列表框而不是一个列表视图,但列表视图要整洁得多。此外,我是一名软件设计(高中)学生,已经学习C#一年半了。我擅长编程,但当事情变得非常复杂时,我开始迷失方向。

有人能帮忙吗?

C#中listView和.SelectedItem的帮助

如果ListView未处于VirtualData模式,则ListView.SelectedItems属性工作正常。

您应该使用SelectedItem属性和Tag属性

var item = (MyClass)  listView1.SelectedItems[0].Tag;

标记属性允许您设置任何类型,例如MyClass当您填充ListView时,请设置Tag属性。

对于ListView,检查SelectedItems

您可以捕获SelectedIndexChanged事件,并在其中执行

ListView.SelectedListViewItemCollection listItems= 
            this.myListView.SelectedItems;
        foreach ( ListViewItem item in listItems)
        {
            MessageBox.Show(item.SubItems[0].Text);
            MessageBox.Show(item.SubItems[1].Text);
        }

我已经解决了这个问题。在与软件课上的一位朋友交谈后,他告诉我使用listView1.FocusedItem.Index,它非常适合我的需求,因为它可以获得所选项目的索引。此外,感谢大家为帮助我所做的贡献。