VirtualMode = true를 사용할 때 Winforms ListView를 업데이트하려면 어떻게합니까?

StackOverflow https://stackoverflow.com/questions/223516

문제

큰 ListView가있는 앱이있어 매우 느리기 때문에 VirtualMode를 구현하고 있습니다. MSDN은 ListView 중간에 새 항목을 추가하고 삭제하는 방법을 다루지 않는 것 같습니다.

예를 들어, ListView에는 1000 개의 항목 (디스크의 파일 표시)이 있으며 ListView의 초기 모집단 이후 (RestieveVirtualItem 이벤트에 의해) 일부 파일이 삭제되고 일부는 업데이트 후 VirtuAllistSize가 동일 할 수 있도록 추가됩니다.

질문 1) ListView '이 항목이 변경/삭제되었습니다'를 어떻게 말합니까?

또한 일부 파일은 변경되며 ListView에서 변경된 상태를 반영하고 싶습니다.

질문 2) virtualmode를 사용하여 이전에 사용했던 항목 컬렉션에 액세스 할 수 없다는 점에서 ListView에서 항목을 찾는 방법 (해당 컬렉션에 포함 된 메소드를 사용했습니다).

쉽게 들리지만 직접 볼 수 없습니다. 대단히 감사합니다.

라이언

도움이 되었습니까?

해결책

항목을 추가하거나 삭제하려면 총 품목 수로 간단하게 미덕을 설정하십시오. 개별 항목을 새로 고치려면 redrawitems를 사용하십시오.

특정 항목을 찾으려면 이미 가지고있는 컨테이너를 사용하고 ListView로 돌아 가지 마십시오. 목록의 표시는 ListView의 항목과 일치해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top