欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

关于ListViewItem的SubItems默认存在一条空白子项

程序员文章站 2022-04-23 09:20:24
如题,纳闷为什么有空白子项并且Clear也没用,所以搜了下,传送门https://www.cnblogs.com/gc2013/p/4103910.html 使用的是ListView的Details视图,提一下。 由于博主分析了很多我没细看,因为我只是想解决这个简单的问题,类似于直接把第一项给移除掉 ......

  如题,纳闷为什么有空白子项并且clear也没用,所以搜了下,传送门https://www.cnblogs.com/gc2013/p/4103910.html

  使用的是listview的details视图,提一下。

  由于博主分析了很多我没细看,因为我只是想解决这个简单的问题,类似于直接把第一项给移除掉。博主这句话我尝试了发现不能解决我的问题,原文"终于让我发现,只要改变listviewitem.text的值,后面两列的内容就能够显示了,于是初步解决方案是改变listviewitem.text的赋值顺序,把它放在所有subitem.text赋值以后再赋值。"

  但是在尝试时我有了新的理解:默认存在的空白子项就是datagridview的首列。这句话只是为了阐明这个子项。具体做法是为listview添加第一列,即: listview1.columns.add("行号", 20);此语句的作用为给listview1添加一列叫做"行号",宽度为20的列。由此,该空白子项可被利用,即将listviewitem.subitems[0].text赋值为实际行号;也可指定为空:listview1.columns.add("", 20); 这就和datagridview的格式一样了。本质上,listviewitem item = new listviewitem("0"); 与 listviewitem item = new listviewitem(); item.subitems[0].text = "0"等效。