ListView 复制数据的问题

来源:百度知道 编辑:UC知道 时间:2024/05/15 14:56:52
想从ListView1中提取一些符合条件的数据拷贝到ListView2里,结果出现了这样的错误

不能在多处添加或插入项“2008/05/03 16:50:59”。必须首先将其从当前位置移除或将其克隆。

代码如下:

foreach (ListViewItem LVI in listview1.Items)
{
if(/*条件们*/)
{//那么
listView2.Items.Add(LVI);
}
}
请问哪里错了?
谢谢~~

因为你的LV1是在listview1里面,你将LV1放在listview2中肯定会出现这个问题

解决方法是你LV1复制一个放在listview2中,代码类似于这个,因为我没有这个环境,所以只能是大概写一下

DataTable dt1 = new DataTable();//相当与你的LV1
DataSet ds1 = new DataSet();//相当于你的listview1
DataSet ds2 = new DataSet();//相当于你的listview2
ds1.Tables.Add( dt1 );//你的LV1是放在listview1中
ds2.Tables.Add( dt1 );//当你这样写是和你犯的错误大概是一样的
ds2.Tables.Add( dt1.Copy() );//解决方法:应该是复制出来一个LV1

呵呵,拿DataSet和DataTable做例子了,不知道对不对,希望对你有点帮助.