У меня есть этот стиль для сетки данных:
Я знаю, что если вы загрузите много данных в сетке данных, производительность страдает. Я могу использовать виртуализацию, чтобы смягчить это падение производительности, однако, как только я добавляю сетку в пользовательское средство просмотра прокрутки, виртуализация теряется.
Я пытаюсь получить его обратно, но я не уверен, как -- сохраняя при этом элемент с именем Image
в моем XAML.
По сути, я хочу, чтобы изображение прокручивалось с содержимым сетки данных и приведенным выше кодом. работает нормально, вот только не знаю как включить виртуализацию.Возможно ли это вообще?
Обновление:Похоже нашел проблему.Последняя Сетка
в шаблоне вызывает проблему:
Как только я t вытащите Canvas
и Grid
, оставив только ItemsPresenter
, тогда это снова быстро.Как я могу получить его быстро и при этом сохранить этот Canvas
?
Обновление 2:Как я могу применить эту (Низкая производительность ScrollViewer с DataGrid) стратегию для моего Grid
, показанного выше? Я пробовал так:
Однако теперь полосы прокрутки исчезли?
Я понимаю, что не могу виртуализировать Canvas
, да мне и не нужно. На самом деле рисуется весь Canvas
, и у меня нет логики, чтобы разделить его на более мелкие части. Совершенно нормально визуализировать изображение целиком, если я могу сохранить виртуализацию строк.