[英]Addinf a clone copy of the checked items in a listview to new one along with other textbox data / C#
我正在尝试将listviewOne中所有选中项的克隆副本添加到listviewTwo。 以及其他文本框值添加到listviewTwo。 但是我出错了..请有人帮助我..
private void button4_Click(object sender, EventArgs e)
{
foreach (ListViewItem item in listView1.Items)
if (item.Checked)
{
ListViewItem lvi = new ListViewItem();
lvi.SubItems.Add(textBox1.Text);
lvi.SubItems.Add(textBox2.Text);
lvi.SubItems.Add(textBox3.Text);
lvi.SubItems.Add(textBox4.Text);
lvi.SubItems.Add(item.Text);
listView2.Items.Add(lvi);
}
}
这行有错误:
lvi.SubItems.Add((ListViewItem)item.Clone());
您不能将ListViewItem
添加到SubItems集合。 您可以添加ListViewSubItem
或添加字符串(使用该字符串创建一个新项目)。
在这种情况下,如果您使用listView1
选中项目的文本创建一个新的子项目,可能就足够了。 将行更改为:
lvi.SubItems.Add(item.Text);
好的,因此您希望将listView1中的所有子项添加到listView2的项中。 尝试这个:
foreach (ListViewItem item in listView1.Items)
{
if (item.Checked)
{
ListViewItem lvi = new ListViewItem();
lvi.SubItems.Add(textBox1.Text);
lvi.SubItems.Add(textBox2.Text);
lvi.SubItems.Add(textBox3.Text);
lvi.SubItems.Add(textBox4.Text);
foreach (ListViewSubItem subItem in item.SubItems)
{
lvi.SubItems.Add(subItem);
}
listView2.Items.Add(lvi);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.