Вы должны быть получены из Panel или PictureBox.
Это имеет ряд последствий в зависимости от того, как вы решили включить буферизацию.
Если вы установите флаг this.DoubleBuffer, то все будет в порядке.
Если вы обновляете стили вручную, вы должны самостоятельно нарисовать форму в WM_PAINT.
Если вы действительно чувствуете себя амбициозным, вы можете сохранить свой собственный обратный буфер в виде растрового изображения.
using System.Windows.Forms;
public class MyDisplay : Panel
{
public MyDisplay()
{
this.DoubleBuffered = true;
// or
SetStyle(ControlStyles.AllPaintingInWmPaint, true);
SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
UpdateStyles();
}
}