가상리스트뷰를 사용해야 할 때는 수천개이상의 리스트를 Sort할때 시간이 오래걸린다.

가상리스트뷰를 사용해야 할때는 일반 Listview에서 수천개 이상의 리스트를 Sorting하는데 시간이 오래걸리기때문에 가상리스트뷰를 이용하게 되는데, 정렬하는 방법은 저같은 경우는 별도의

struct { int index, char temp[260] } link

과 같이 구조체를 만들어서 연결해 주는 형식으로 구현하였습니다

예 ) 파일리스트[link[가상리스트뷰 처리부분 인자].item] 형식으로 연결하여 사용했습니다.

실질적으로 정렬부분은 link구조체에서 정렬하고 swap(link[i],link[j]) 같은 부분으로 처리하였습니다.

 

 

 

 

아래내용은 http://six605.tistory.com/248 훌륭하신님의 글에서 퍼왔습니다

1. 가상 리스트 뷰의 갱신
   GetListCtrl().SetItemCountEx(출력할 아이템의 개수);
  

2. 가상 리스트뷰 그리기 멈춤, 그리기 시작
   GetListCtrl().SetRedraw(FALSE);
   GetListCtrl().SetRedraw();

   cf)    GetListCtrl().SetRedraw(); 동작으로 리스트뷰를 다시 그릴때 헤더도 다시 그리게 된다.

※  난 이렇게 사용한다.
   GetListCtrl().SetRedraw(FALSE);
   GetListCtrl().SetItemCountEx(출력할 아이템의 개수);
   GetListCtrl().SetRedraw();