picoe/Eto

[Mac] gridview gets and draws all cells horizontally out of view

Open

#1 529 ouverte le 5 déc. 2019

Voir sur GitHub
 (1 commentaire) (0 réactions) (0 assignés)C# (320 forks)batch import
help wanted

Métriques du dépôt

Stars
 (3 387 stars)
Métriques de merge PR
 (Merge moyen 11m) (11 PRs mergées en 30 j)

Description

Expected Behavior

When the mac gridview loads and gets cells to display/draw, it should only do this for the visible cells.

Actual Behavior

The mac gridview seems to load and draw all the cells horizontally out of view, but not vertically out of view.

Info

When loading data in to a 300/300 size gridview with a column count of 60 and a row count of 10,000 with varying complex cells, it takes quite a while to load. When loaded, it seems that scrolling horizontally does not cause the table cell views to load/be drawn. Almost like they have already been drawn. This can cause massive performance drops to the mac gridview with many columns as it tries to get the data for all columns while scrolling vertically.

Solution

Only get/draw cells that are visible in the gridscrollview

Steps to Reproduce the Problem

  1. Create grid of any size
  2. Give it 60+ columns, 10000+ rows and cells of varying complexity. ~complex being an imageviewcell
  3. Launch app and see the performance issues mentioned above.

Specifications

  • Version: latest
  • Platform(s): mac, xammac2
  • Operating System(s): any mac OS

Guide contributeur