Originally posted by Slow_Learner
I see what you mean - Well, the problem with .Invalidate is that it invokes .Paint, which makes the background of your form overlay what you have painted, which causes the flicker. Maybe there's a way to get a brush to not re-draw over an area you have already drawn (doesn't look like a really simple way to me).
vb6 had a very nice way, I tried upgrading vb6 code to vb.net... but it doesnt upgrade those parts

in vb6 you could change the drawmode so that if you draw twice on the same thing, it would erase that area. it was vbXorPen, or something like that. It doesnt exist in vb.net I guess. But there HAS to be away to do this! if .NET is so powerful and GDI+ is so "cool", there should be a way!