Без дополнительной информации я не могу точно сказать, почему вы видите разницу в поведении (я бы сказал, что вы видите ту же проблему, поскольку вы признаете, что отладочная версия тоже не всегда работает), но вы можете найти что точки останова часто «исправляют» проблемы с рисованием, потому что переключение обратно в Visual Studio приводит к аннулированию всей поверхности рисования, а не только небольшой части. Таким образом, вы открываете приложение, и оно не рисует правильно, вы попадаете в точку останова в Visual Studio, переключаетесь на просмотр некоторых переменных, возвращаетесь к приложению, и оно отображается правильно, потому что OnPaint был вызван с соответствующим прямоугольником отсечения, чтобы перекрасить всю поверхность (и OnPaintBackground также обычно вызывается, см. ниже).
Если это так, вы должны быть в состоянии воспроизвести его в версии выпуска, свернув и восстановив приложение. Если это «исправляет» отображение вашего элемента управления, то это, вероятно, вызвано проблемой с вашим методом рисования, предполагающим, что он рисует весь элемент управления, когда его может не быть.
Вы также можете заглянуть в PaintBackground, чтобы убедиться, что вы стираете поверхность элемента управления должным образом. Возможно, вы оставляете свой старый дисплей и перерисовываете его поверх, а не начинаете со «свежего» холста.
На основании вашего описания того, что происходит, и того, как вы его перерисовываете, это мои лучшие предложения. Чтобы получить более точную помощь, мне потребуются более конкретные сведения (код рисования, конкретное описание того, что происходит - элемент управления не нарисован или отображаются только части и т. Д.).