有没有办法让我自己制作一份参考文件?例如,我在表单上添加了一个ListView控件,我想保留其Items Collection,即
ListViewItemCollection lvic = ListView.Items();
当我调用 ListView.Items.Clear()时,不应清除lvic。
答案 0 :(得分:1)
轻松尝试
ListViewItem[] items = new ListViewItem[listView1.Items.Count];
listView1.Items.CopyTo(items, 0);
OR
您需要创建对象的克隆,您可以查看此帖子,讨论对象的克隆:Cloning in C#.NET.
文章中讨论了两种类型的克隆
1. Deep Cloning
2. Shallow Copy
答案 1 :(得分:1)
克隆/复制是一个广泛的主题。这实际上取决于场景。在您的情况下,您可以使用Linq
简单地复制该集合ListViewItem[] copiedItems = ListView.Items().OfType<ListViewItem>().ToArray();
在这种情况下,请小心克隆。无法将ListViewItemCollection的实例分配给ListView,并且ListView或ListViewItem的副本仍然使用一些本机资源(在winforms和wpf世界中),因此在错误使用时复制将导致可怕的错误