我正在尝试拥有2个列表视图,最终将充当彼此的镜像。在第一个listview中,我可以从数据库中填充它而没有任何问题。我有另一个列表视图,当在第一个listview(listVariants)中检查一行时,用户可以将整行移动到第二个listview(addFCList)。使用下面的代码它是有效的,有点。我遇到的问题是当从listVariants中检查另一个项目时,它添加到addFCList的方式是内联的,它只是包装。每个项目和子项目作为单个项目添加到列表视图中。
我有两个listview cloumns设置相同。我的问题是如何让第二个listview(addFCList)与第一个listview(listVariants)相同?我错过了一些明显的东西......
编辑我已经解决了这个问题,但将来会帮助某人将其解决。
for (int i = 0; i < listVariants.Items.Count; i++)
{
if (listVariants.Items[i].Checked)
{
string UNI = listVariants.Items[i].SubItems[9].Text;
bool nameInsert = true;
for (int t = 0; t < addFCList.Items.Count; t++)
{
if (addFCList.Items[t].SubItems[9].Text == UNI)
{
nameInsert = false;
break;
}
}
if (nameInsert)
{
addFCList.Items.Add((ListViewItem)listVariants.Items[i].Clone());
}
}
}
感谢您提供任何帮助和建议。
答案 0 :(得分:0)
listView1.Columns.AddRange((from ColumnHeader item in listView2.Columns
select (ColumnHeader)item.Clone()).ToArray());