为了账号安全,请及时绑定邮箱和手机立即绑定

麻烦帮忙看一下,listview.item.clear()与listview.clear()的区别

麻烦帮忙看一下,listview.item.clear()与listview.clear()的区别

人到中年有点甜 2021-10-26 19:15:11
我在填充listview的时候,错把listview.clear()当做listview.item.clear()来使用了,结果listview中什么都没有了。代码如下:private void acceptorFull(){string sql = "select * from mails where isdeleted=1";FullListview(sql);}private void FullListview(string sql){SqlCommand cmd = new SqlCommand(sql,DBHelper.conn);try{DBHelper.conn.Open();SqlDataReader dr = cmd.ExecuteReader();listView1.Clear();//这里本来应该是listView1.Items.Clear();的while (dr.Read()){int id=(int)dr["id"];MessageBox.Show(id.ToString());ListViewItem lviMail = new ListViewItem(id.ToString());lviMail.Tag = id;listView1.Items.Add(lviMail);lviMail.SubItems.AddRange(new string[] { dr["receiver"].ToString(), dr["acceptor"].ToString(), dr["date"].ToString(), dr["remark"].ToString() });}dr.Close();}
查看完整描述

2 回答

?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

listview.clear()与listview.item.clear()的区别就是使用了listview.item.clear()后,listview控件中仍然保存着listviewitem项的结构,即listview有多个列,每列可能对应的列标题数据等。而当你使用了listview.clear()后,整个listview内保存数据的结构就没了。

查看完整回答
反对 回复 2021-10-31
?
回首忆惘然

TA贡献1847条经验 获得超11个赞

从msdn拷贝的
您可以使用clear从 ListView 控件中移除所有的项和列,而不必从 ListView.ColumnHeaderCollection 和 ListView.ListViewItemCollection 类中调用各个 Clear 方法。
注意:
Clear 方法不清除为 ListView 控件指定的 Groups。若要清除 Groups,请调用 ListViewGroupCollection.Clear。

查看完整回答
反对 回复 2021-10-31
  • 2 回答
  • 0 关注
  • 363 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信