"Why data virtualization? Say, you want to display a table from a database which contains thousands of rows in your WPF-application. If an ordinary list is used in combination of a DataGrid, then all the rows have to be loaded into memory. Even though, the amount of rows which can be displayed at once usually doesn't surpass 50 rows. Fortunately, DataGrids have UI-virtualization integrated. Which means that only the visible rows get representing UI-elements. However, still the whole data has to be loaded into memory. In order to virtualize the data in analogous manner to the UI-elements data virtualization has to be used. How? Data virtualizing collections act as if they have all the data. However, they only fetch the data wich is currently requested on demand. Usually the data is fetched in chunks called "pages" of fixed size. For example, if the page size is set 100 and the DataGrid is initially pointing to the top most row with index zero, then initially only the first 100 elements (i.e. the first page) is fetched. As soon as the user scrolls further down and the row with index 100 is displayed, another page is loaded. The advantage is generally a better performance and less UI freeze, because lesser data is loaded at once and only on demand. Furthermore, the memory consumption improves as well. Use case of this project Up until now this data-virtualizing collection has been used exclusively for WPF-DataGrids. Hence, it wasn't tested for other ItemsControls. However, it is assumed that they work similarly to the DataGrids. The ItemsSource of DataGrids accepts arbitrary instances of IEnumerable. Which would be problematic from data-virtualizing perspective. Fortunately, the DataGrid are optimized to IList implementations and use theis indexers if the ItemsSource is castable to IList. This project uses it to its advantage in order to track which indexes were requested in recent past. Therefore, only page can be loaded only on demand. For further information please refer to the github page of this project."
Library or NuGet package built with .net standard and c#.
Project website: https://github.com/Yeah69/BFF.DataVirtualizingCollection
Repository: https://github.com/Yeah69/BFF.DataVirtualizingCollection
NuGet: https://www.nuget.org/packages/BFF.DataVirtualizingCollection/
"Join SMART COSMOSAre you ready to become part of creating something really big? With SMART COSMOS you can connect a universe of everyday things to the digital world. In …"
Library or NuGet package built with .net standard and c# by jkoehler.
"NSwag: The Swagger API toolchain for .NET and TypeScript"
Library or NuGet package built with .net standard and c# by Rico Suter.
"SQLite.Net PCL is an open source, minimal library to allow .NET and Mono applications to store data in SQLite databases. …"
Library or NuGet package built with .net standard and c# by Øystein Krog, Frank Krueger & Tim Heuer.
"Quick Start for Simple Injector ASP.NET MVC integration. This package adds the needed dependencies and code examples to get started quickly with Simple Injector in an MV…"
Library or NuGet package built with .net standard and c# by Simple Injector Contributors.
"The inspiration for this project BinaryFormatter and MessagePack were a massive disappointment for many things I wanted to do, so I decided to make my own! What it d…"
Open source library or nuget package built with .net standard and c#.
"Dieses Paket enthält die deutschen Satellitenassemblys für ASP.NET Web Pages 3."
Library or NuGet package built with .net standard and c# by Microsoft.
Hello, I'm Corstiaan. I'm a software developer from the Netherlands and I manage BuiltWithDot.Net. I created this site as a place where developers working with .net technology can showcase their projects and inspire other developers.
There's so much you can build with .net these days that I thought it would be nice to have a corner of the web dedicated to the breadth of .net. Enjoy!
Get weekly updates about new projects built with .net tech
Great! Click the link in the e-mail to confirm. Check the spam folder if you can't find it.
No spam. Unsubscribe any time.
© 2025 - created by Corstiaan Hesselink - submit project - RSS feed - contact