Hey i have a question for you. I''ve noticed by setting some tickcounts on forms that you can get a good test of how fast or slow you load of the grid is. The thing i noticed today in testing that was if a form took say 100 ticks to load with a grid the next time in it takes 50. Then i noticed that if i went to a completly unrelated form with a grid first and then went to my form that was taking 100 the first time now it took 50. So i took our main form with no grid and hid a grid behind a control but made it visible but because it was hidden you couldnt see it. Now my first time loads on the 100 form is 50. What is it about the first time a grid is visible on a form with no access to it at all that causes all subsequent forms to load faster? Is it that the dll has been accessed or something?? Just curious
Watch your output window as you load these forms when you run the project from within DevStu.
One thing I think you will see is that the first time a form is loaded that uses the grid, it is then the the grid assembly and shared assembly are loaded. This may explain the behavior you are seeing. Assemblies are only loaded when the framework first loads a type defined in that particular assembly.
AdministratorFebruary 24, 2005 04:08 PM UTC
Ok i see what you are talking about and that makes sense. One other speed question related to my LOAD speed tests is this. On that same form that takes 100 to load, how come when i add a CurrentCell.MoveTo it makes that load time go up to 280 on the first time in. its a 128 rows by 17cols grid filled full. so the moveto almost triples the original load time and almost doubles it after the original load time. id think loading that grid up would take more time then moving to a certain cell?
AdministratorFebruary 24, 2005 04:17 PM UTC
that should of been 380 not 280 so it takes like almost 3 times as long just to do that moveto
AdministratorFebruary 24, 2005 05:44 PM UTC
Just a thought.
The grid is initially layed out in its default setup. If when you move the currencell, this forces the grid to scroll, then this is triggerring a second layout. Moving currentcell''s can trigger events which may take some additional time especially if you are activating the cell as the currentcell moves.
I am not sure whether this will have an effect or not, but you might try calling grid.BeginUpdate as soon as you can, followed at the end of your initialization code with a grid.EndUpdate and a grid.Refresh call to see if that speeds things up for you.
AdministratorFebruary 24, 2005 06:03 PM UTC
When you activating the cell as i move along??? what exactly do you mean. when i just move around the grid with my arrow keys it never goes in to active edit mode of thats what you mean. i even tried to a moveto(-1,-1) before the scroll in view. what exactly did you move activating?
AdministratorFebruary 24, 2005 08:35 PM UTC
>>When you activating the cell as i move along???
When the cell becomes current, you automatically see the edit cursor. This is what I meant when I said activating the currentcell.