Specifies delayed update behavior when changes are made to the underlying engine from outside of WndProc of this control, for example when changes made through an external PropertyGrid attached to the engine.
public enum GridDelayUpdateBehavior
The grid does not to call update after each and every operation. Instead it leaves the update to the end user or to user interaction. Normally, operations on the engine are triggered from within a WndProc call. In the grids WndProc routine the grid will call its base class version and then after the WndProc returns it will call synchronize any changes to the underlying engine with the display if the message was a mouse operation.
This has the big advantage that users don't have to worry about calling BeginUpdate / EndUpdate in mouse handling code. You can just batch operations and then manually call Update(). The programmer does not have to worry about calling Update() since that will be done once the Mouse event returns and the GridTableControl.WndProc is executed. The idea is to have good performance for the most typical case. Updating the grid after every operation would be too expensive (e.g. if you loop through the records and set IsExpanded = true for each record).
No special delay update behavior. Programmer has to manually call Update. Only when a mouse message is handled WndProc will automatically synchronize display with engine.
Post a custom message to the message loop whenever changes in engine are detected that need the screen to be updated
Post a custom message to the message loop and do also trigger a timer whenever changes in engine are detected that need the screen to be updated
Use a timer do delay synchronization whenever changes in engine are detected that need the screen to be updated. PostCustomMessage and Timer can be combined.