가상리스트뷰를 사용해야 할 때는 수천개이상의 리스트를 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();