Raaah je vais péter un câble ! !! 
J´ai construit une petit app avec wxWidgets qui comprends nottament une classe MyCanvas héritant de wxScrolledWindow.
Pas de problème pour l´initialisation, mais pour le dessin à l´aide du device context c´est un autre affaire.
J´ai choisi de gérer les évènements Paint plutôt que d´overrider le membre OnDraw ( pour utiliser un wxBuffered..., bien qu´on puisse le faire dans le OnDraw je pense)
Toujours est-il que la fonction OnPaint ne pose aucun problème sur un resize de la frame : tout s´exécute comme il faut, mais ca foire complètement quand on scrolle, ou plutôt ca ne fait rien : ca se contente de faire une copie de ce qu´il y a à l´écran en le décalant selon la direction scrollée MAIS sans afficher ce qui devrait apparaitre après scrolling ( la partie de la zone qui n´était pas visible auparavant).
J´ai l´impression que le système de scrolling ne demande pas de repaint après mouvement ( Refresh())
Mais dans les exemples fournis avec le framework ( drawing et scroll), les applications ne récupèrent pas les évènements relatifs au scrolling dans une event table : j´ai l´impression dans ces deux cas que le système de scrolling demande un repaint après chaque déplacement.
La question est pourquoi dans un cas et pas dans l´autre, et comment faire pour que tout aille bien ?
J´ai déjà fait ce genre de choses avec ce framework ( mais j´ai oublié) et je viens de passer une heure dessus
Une idée ?
( si joint, ma fonction OnPaint)
void MyCanvas::OnPaint(wxPaintEvent &)
{
wxBufferedPaintDC dc(this);
DoPrepareDC(dc);
dc.SetBackground(*wxWHITE_BRUSH);
dc.Clear();
// Dessin...
}