Hello,
I have a test program with UltraGrid and UltraDataSource. DataSource has simple hierarchy with one child band. Root and child bands has no columns and DataSource has no real data. Then I set row count to 100000 record. After calling ExpandAll() method for UltraGrid.Rows memory usage dramatically increases ( from 41.5 to 120 Mb with LoadStyle.PreloadRows set ).
We are using VS 2008 SP1 and NetAdvantage 2008 Vol.2.
I'd like to understand the reason of memory growth and if it's possible ways of avoiding it. Thanks in advance.
Seems pretty straightforward to me. You are forcing the creation of 100,000 UltraDataRows in addition to 100,000 UltraGridRows. So this seems perfectly reasonable to me.
If you are interesting in saving memory, you should check out the WinGrid Performance Guide.
Hi, Mike,
Thanks for reply but unfortunately it doesn't help me at all. I can't understand how am I forcing creation of 100,000 UltraDataRows if they are already created. As I mentioned before, LoadStyle property is set to PreloadRows which means that all DataRows are already created before my call of ExpandAll() method. Here is my code:
ultraDS1.Band.Key = "Main";