Listview详细视图没有显示任何内容。

15

我试图在WinForms中使用ListView的详细视图模式,但是没有任何项目显示出来。随着添加项目,ListView本身正在增长,但是没有任何内容被显示。

它可以在列表模式下显示项目,但是在详细模式下却不能。

我已经尝试了以下代码,请问有什么想法吗?

forms_listView.Columns.Add("URL");
forms_listView.Columns.Add("Position");

ListViewItem lvi = new ListViewItem();
lvi.Tag = form;
lvi.Text = form.URL;
lvi.Name = "URL";
ListViewItem.ListViewSubItem subItem = new ListViewItem.ListViewSubItem(lvi, "Position");
subItem.Name = "Position";
subItem.Text = ""+form.Position;
lvi.SubItems.Add(subItem);
forms_listView.Items.Add(lvi);

2
你的问题不在那段代码里。 - David Heffernan
2
@David Heffernan 谢谢。由于您的评论,我在其他地方找到了它 :) 从未意识到 clear 也会删除列。 - Kurru
2个回答

29

我找到了问题所在。我调用了 listview.Clear() 方法,文档中说明该方法会删除所有项和所有列,这导致没有任何项显示。


7
哈哈,我已经试图解决同一个问题已经20分钟了!谢谢 :) 需要调用listview.Items.Clear()。 - csauve
答案对C++也很有用,因为我需要先调用ListView_SetExtendedListViewStyleListView_InsertColumn(其他视图看起来都很好)。 - Dwayne Robinson
总是那些最愚蠢的小事,不是吗? - Philip Guin

4
forms_listView.Columns.Add("First Column Title"); 
... 
forms_listView.Columns.Add("Last Column Title");  

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接