У меня есть изображение PictureBox в форме, которая перемещается при движении мыши по панели.
Он движется так, как я хочу, однако он все время мерцает (например, обновления), и я узнал, что это проблема с формами.
Я попробовал следующие строки кода в конструкторе моей формы, но безуспешно:
SetStyle( ControlStyles.ResizeRedraw, true );
SetStyle( ControlStyles.UserPaint, true );
SetStyle( ControlStyles.AllPaintingInWmPaint, true );
SetStyle( ControlStyles.OptimizedDoubleBuffer, true );
Это обработчик события движения мыши, если он помогает увидеть всю картинку. chipHolder — это панель, а image — это изображение, импортированное из файла соответственно.
private void grid_MouseMove(object sender, MouseEventArgs e)
{
columnPosition = e.X;
if (columnPosition != -1)
{
if (!(columnPosition < 35 || columnPosition > 610))
{
chipHolder.Controls.Clear();
PictureBox picBox = new PictureBox();
chipHolder.Controls.Add(picBox);
picBox.Image = image;
picBox.Width = image.Width;
picBox.Height = image.Height;
picBox.Location = new Point(columnPosition - 33, 0);
picBox.Show();
}
}
chipHolder.Update();
}
Любые идеи?