在我的winform(C#)中,我有listView有两列,用于显示搜索数组的结果,这是数组条目的基本细节(数组中的所有数据都是字符串类型)。我可以在列表视图中添加和删除项目,但我希望能够获得列表视图中单击的行的值。
我打算用它来更新显示器的完整输入信息,但我无法获得所选项目的值。我正在其他地方阅读并看到有人提到.SelectedIndex属性,但是当我尝试编码时,我无法使用此属性。
我可以使用两个列表框而不是列表视图,但列表视图更整洁。另外,我是一名软件设计(高中)学生,并且已经学习了一年半的C#。我有能力编程,但是当事情开始变得非常复杂时,我开始迷失方向。
有人可以帮忙吗?
答案 0 :(得分:2)
如果ListView不在VirtualData模式下,ListView.SelectedItems
属性可以正常工作。
答案 1 :(得分:0)
您应该使用SelectedItem属性和Tag属性
var item = (MyClass) listView1.SelectedItems[0].Tag;
tag属性允许您设置任何类型,例如MyClass 填充ListView时设置Tag属性。
答案 2 :(得分:0)
ListView
检查SelectedItems
答案 3 :(得分:0)
您可以捕获SelectedIndexChanged
事件并且可以执行
ListView.SelectedListViewItemCollection listItems=
this.myListView.SelectedItems;
foreach ( ListViewItem item in listItems)
{
MessageBox.Show(item.SubItems[0].Text);
MessageBox.Show(item.SubItems[1].Text);
}
答案 4 :(得分:0)
我已经解决了这个问题。在我的软件类中与朋友交谈后,他告诉我使用listView1.FocusedItem.Index
,它完全符合我的需要,因为它获得了所选项目的索引。另外,感谢大家在尝试帮助我时提供的意见。