2010-06-09 2 views
0

현재 프로젝트에서 TreeListView (하위 유형 ObjectListView)를 사용하고 있습니다. 목록의 각 항목에는 아이콘이 있지만 아이콘은 항목의 상태에 따라 다릅니다. 예를 들어 항목이 읽기 전용이라면 작은 자물쇠 기호가있는 아이콘을 사용하고 싶습니다.ObjectListView의 아이콘 업데이트

항목이 처음 TreeListView에 추가되면 아이콘이 올바르게 표시되지만 나중에 항목의 상태가 변경되면 아이콘이 업데이트되지 않습니다. 컨트롤이 모든 아이콘을 다시 생성하도록하려면 어떻게해야합니까?

답변

1

첫 번째 열의 ImageGetter가 호출 될 때 아이콘이 표시되기 때문에 일반적으로 행이 다시 생성 될 때만 호출되기 때문에 BuildList을 호출하고 모든 행을 강제로 다시 작성할 수있는 것처럼 보입니다. 그러나 복잡성과 행 수에 따라 비용이 많이들 수 있습니다.

가능하면 더 나은 해결책은 데이터가 변경되는 즉시 RefreshItem 또는 RefreshObject으로 전화하는 것입니다. 이를 위해서는 해당 아이콘이 업데이트되어야하는 특정 OLVListItem (행) 또는 변경된 기본 모델 객체 (따라서 관련 행이 재구성되어 아이콘이 달라질 수 있음)를 알아야합니다.