Я знаю, что этот вопрос старый, но у меня была та же проблема, и я обнаружил, что он появился только тогда, когда я использовал несколько элементов управления, которые реализовали двойную буферизацию вручную.
Для меня я нашел проблему в этом пункте:
BufferedGraphicsContext _BackbufferContext = BufferedGraphicsManager.Current;
Так что все мои элементы управления использовали контекст Current , который, как я полагаю, всегда один и тот же.
После того, как я заменил его на
BufferedGraphicsContext _BackbufferContext = new BufferedGraphicsContext();
все работает как хотел.
Надеюсь, это немного полезно.