Полагаю, ваша проблема в том, что ваш экран обновляется во время операции удаления, что приводит к мерцанию.
Методы SuspendLayout и ResumeLayour только приостанавливают макет элемента управления .Он не останавливает перерисовку или изменение размера элемента управления.
Вы должны включить DoubleBuffering для элемента управления.
Вам следует создать новый класс элемента управления, полученный из элемента управления WinForms, который выиспользуете здесь.В конструкторе этого класса включите двойную буферизацию, используя метод SetStyle
.
Предполагая, что ваш элемент управления horizontalPictureScroller1
является PictureBox -
class MyControl : System.Windows.Forms.PictureBox
{
public MyControl()
{
this.SetStyle(ControlStyles.DoubleBuffer |
ControlStyles.UserPaint |
ControlStyles.AllPaintingInWmPaint,
true);
}
}