próbujemy wymyślić dobry sposób na wirtualizację TreeView
, dane nie są tak naprawdę problemem, ponieważ są bardzo lekkie (około 16 bajtów na element), problem polega na tym, że potencjalnie możemy mieć dziesiątki Tysiące i chociaż rzeczywiste dane zajmowałyby tylko 160 KB pamięci, elementy widoku drzewa używają o wiele więcej pamięci. Próbowaliśmy wirtualizacji z 3 różnymi drzewami teraz, WPF, Infragistics i Telerik. Wszystkie z nich mają duże problemy, które sprawia, że są bezużyteczne dla naszej aplikacji:TreeView Virtualization
WPF TreeView
: Pasek przewijania pokazuje jakieś dziwne zachowanie, skacze wokół partii, zmienia rozmiar niekonsekwentnie, przewijanie poprzez przeciągnięcie go myszką nie działa prawidłowo (przeskakuje tam iz powrotem)
Telerik: przedmioty znikają, pasek przewijania jest niekonsekwentny też przedmioty losowo poszerzyć upadek, style nie działa
Infragistics: Rzeczy nie są w ogóle wirtualizacji, każdy element pozostaje w wirtualizacja pamięci jest bezużyteczna.
Od tego czasu zmagamy się z tym problemem i nie byliśmy w stanie znaleźć dobrego rozwiązania. Czy któryś z Was pomyślnie wdrożył wirtualizację w wersji TreeView
z ponad 9000 elementów? Jeśli tak, jaka była twoja strategia? Czy korzystasz z kontroli zewnętrznych? Czy to działa w 100%?
Wszelkie sugestie bardzo mile widziane.
Dzięki.
+1 Mam ten sam problem z WPF zwirtualizowanych widoku drzewa, próbowałem wszystkiego i zachowanie jest nadal błędne, gdy chodzi o przewijanie. – BrokenGlass
@BrokenGlass Dzięki za udzielenie odpowiedzi na pytanie. Mam nadzieję, że otrzymamy dobre rozwiązanie. – Carlo
Zobacz także moje pokrewne pytanie tutaj (oczywiście w/o odpowiedź): http://stackoverflow.com/questions/4074475/scrolling-bug-in-wpf-virtualized-treeview – BrokenGlass