I am making a small C # GUI application that reads data in the form of a table (cells, rows, columns) from a binary file and displays it to the end user. Some files are very small (5 columns / 10 rows), but some are very large (245 columns and almost 50,000 lines).
The only method that seemed to me to easily display a table similar to MsExcel was a DataGridView . I was very pleased with this when I tried small files, but as soon as I tried with a huge one, it went OOM before it even finished loading (and I had more than 4 GB of free memory).
After that, although I discovered it VirtualMode , and it was very fast. However, unfortunately, the columns were no longer sorted, and this is mandatory.
So what can I do to get a performance similar to DataGridView virtual mode, but also sort it? (If you have another control, everything is fine, I do not have to use a DataGridView)
Also note that:
- The binaries were not designed or produced by me. I can not control their format.
- Data is not in the database.
- My end users do not need to install the database and import the data there.
source
share