'listview'에 해당되는 글 1건

  1. 2008.12.16 ListViewItem 복사

ListViewItem 복사

Language/C# 2008. 12. 16. 10:00
하나의 ListView에서 다른 ListView로 모든 데이터를 복사하고 싶을 때 아래와 같이 코딩을 하면 오류가 발생한다.

foreach (ListViewItem item in listViewA.Items)
{
     listViewB.Items.Add(item);
}

위의 코드 수행에 따른 오류 메시지를 보면 "두 개 이상의 위치에 'xxx' 항목을 추가하거나 삽입할 수 없습니다. 먼저 항목의 현재 위치에서 항목을 제거하거나 복제해야 합니다."라고 나온다.

오류메시지를 대략 보면 foreach 구문에서 item이 참조형식으로 받아오기 때문에 생기는 문제같다. 오류메시지에 나온 해결방법중 복제하는 방법을 코드로 옮기면 아래와 같다.

아래 코드를 실행해보면 원하는데로 동작한다.
foreach (ListViewItem item in listViewA.Items)
{
     listViewB.Items.Add((ListViewItem)item.Clone());
}


좀더 자세한 내용은 MSDN Forums(copy listview item to another listview.) 참조...
Posted by Gungume
,