Grid performance

Using the Demo1 sample application, I noticed that for any grid style other than 'None' or 'Line' screen drawing bogs down to where the application becomes unusable.
'Line' also impacts performance, but is still usable.
I'm using a grid spacing of 4x4 (16x16 major), both dash styles solid.
The editor I'm trying to create typically requires large diagrams with a relatively dense grid.
Any ideas on how to deal with this ?

Maybe my machine is faster than yours, but I don’t have any performance issues when the GridCellSize is 4x4 and the GridMajorLineFrequency is 4x4 and the GridStyle is Dot or Cross.

If the Properties window is still visible while you are dragging around the Selection, that's a much bigger performance "drag" than having to draw the grid under the selection.

The performance is horrible, also with the Properties window closed.

With the application zoomed full (1920 x 1200), the Overview window lags behind about a second when I drag it across the diagram.
Zooming (shift/ctrl-F6) takes several seconds to even respond.
Switching the application to the foreground takes several seconds.
All this jerkiness goes away with the grid turned off.
My PC is neither particularly slow nor fast (P4, 3.4GHz, 2GB RAM).

That’s odd, because I don’t experience any such delays no matter what I do, including everything that you have described. My machine is actually a dual processor, but at 2 Ghz. My monitor is also 1920x1200. Win XP SP2, all the latest updates except for IE7. GoDiagram 2.6.2.2 (.NET 2.0). I’m running the Demo1.exe from the installation kit.

I don't know what to say. Does this also happen on another kind of machine? Although that seems unlikely, since all the .NET GDI+ drawing is in software.

The performance especially seems to degrade when zoomed out, e.g. down to 50% or lower.

Yes, that makes sense, because there would be a lot more lines to draw when zoomed out. With a GridStyle Dot or Cross that can mean millions of little lines.

You could add a GoView.PropertyChanged event handler that checks for new values of "DocScale". As the value gets smaller you could change the nature of the GridStyle and/or the GridCellSize.