I am writing a control based on the UltraDayView (inherits UltraDayView) which requires a lot of custom GDI+ work.
One of the problems I'm running into is my inability to control the invalidation of certain parts of the control. As I move the mouse, resize the window, etc, the UltraDayView marks certain areas as invalidated and I can't stop it. Overriding OnInvalidated obviously doesn't help because at that point the areas have already been marked for repainting. It would be great if there was an event like OnBeforeInvalidate(_invalidRect) so that I could control what areas are to be redrawn, but of course one does not exist.
Is there a way I can turn off all or refreshing done by the UltraDayView itself or perhaps just control the rectange/region being passed to invalidate? Perhaps by overriding WndProc? Perhaps through some underlying Infragistics mechanism I am not aware of?
Thanks,
Raphael
When trying to change the appearance or layout of our controls. You want to use a DrawFilter or a CreationFilter. Essentially you create a class that lets you change how elements are drawn or laid out.
For more information see the following on the Presentation Layer Framework that our controls are built on top of:
http://help.infragistics.com/Help/NetAdvantage/WinForms/2009.1/CLR2.0/html/Win_Presentation_Layer_Framework_PLF.html
Filters:
http://help.infragistics.com/Help/NetAdvantage/WinForms/2009.1/CLR2.0/html/Win_Filters.html