У меня проблема с освежающей графикой на панелях и формах. Когда я рисую изображение, он отлично работает, но когда я хочу заменить его другим изображением, используя Panel.Refresh, он автоматически активирует обработчик событий без конца. Если я использую Panel.Update, он просто нарисует второе изображение на первое. Многие люди рекомендовали использовать метод Invalidate, но он имеет ту же проблему с бесконечным циклом.Освежающее изображение на панели создает бесконечный цикл (C# - Winforms)
Bitmap bitmap = new Bitmap(Resources.Image1);
private void panel1_Paint(object sender, PaintEventArgs e)
{
if (parameter == 0) { bitmap = new Bitmap(Resources.Image1); }
if (parameter >= 2) { bitmap = new Bitmap(Resources.Image2); }
e.Graphics.DrawImage(bitmap, 60, 10);
panel1.Refresh();
}
'panel1.Refresh();' или 'Invalidate' запускает событие' Paint' снова -> бесконечный цикл. Убери это! Переместите его туда, где вы меняете 'параметр' !! – TaW