Код: Выделить всё
internal class PictureSizeCropBox : Control {
protected override void OnPaint(PaintEventArgs ea) {
ea.Graphics.Clear(Color.Green);
Pen redPen = new(Color.Red, 1);
ea.Graphics.DrawRectangle(redPen, new Rectangle(0, 0, Width - 1, Height - 1));
}
}

Что такое Graphics.Clear делаете? Первоначально он рисует зеленый фон, но, как ни странно, на самом деле он не очищает старые данные, отображаемые элементом управления. Как правильно рисовать элементы управления формами Windows, чтобы они правильно перерисовывались при изменении размера, очищая старую визуализацию? Нужно ли мне просто нарисовать закрашенный прямоугольник для фона, и если да, то какой смысл в Graphics.Clear и когда следует его использовать?
Подробнее здесь: https://stackoverflow.com/questions/792 ... s-forms-co