例如,如果我点击第一个项目,它将在索引0处。 如果我点击第15项,则索引应为16。
我试过
private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{
int index = listView1
}
但我不确定这是否是正确的事件,或者我应该使用listView1_Click事件?
listView1没有任何属性SelectedIndex。 最后一件事是我想根据我点击的项目的索引获取项目文本。
答案 0 :(得分:2)
List<int> selectedIndices = listView1.SelectedIndices.Cast<int>().ToList();
它返回所选索引的集合(因为默认情况下,如果单击按下Ctrl或Shift键的项目,则可以在列表视图中选择多个项目)。另请注意,取消选择所有项目时,此集合将为空,listView1.SelectedIndices[0]
之类的内容将引发IndexOutOfRange
例外。
但是,如果您将MultiSelect
属性设置为false
。然后此集合将始终包含零个或一个项目。您可以使用Count
的{{1}}属性来检查项目是否已被选中:
SelectedIndicesCollection
答案 1 :(得分:1)
假设您想要当前所选项目的索引,您可以这样做:
int index = ListView1.FocusedItem.Index
答案 2 :(得分:0)
你需要使用选定的索引列表,你也可以这样做。
describe("log reporting", function () {
beforeEach(function(){
spyOn(window.console, 'log');
});
it('should print log message to console', function(){
test();
expect(window.console.log).toHaveBeenCalled();
})
});
答案 3 :(得分:0)
首先,您可以获得如下所示的listview项目对象
ListViewItem lst=(ListViewItem)listView.SelectedItems[0];
从该对象(lst)您可以获得如下文本
string text=lst.Content.ToString();
答案 4 :(得分:-1)
根据MSDN,仍然有SelectedIndex。在我看来,你的事件是错误的,但你仍然可以通过.SelectedIndex看到它。正如之前提到的那样。 更新:根据评论,链接是正确的情况。