Простая анимация в WinForms

В некоторых ситуациях быстрее .net-framework и удобнее не рисовать с помощью animated события рисования, а получать winforms объект Graphics из элемента winform управления/формы и рисовать rotateanimation "на" этом. Это может вызвать .net некоторые проблемы с непрозрачностью/сглаживанием/текстом windows-form и т. д., но может стоить winform проблем с точки зрения отсутствия windows.forms необходимости перекрашивать winform весь шабанг. Что-то вроде:

private void AnimationTimer_Tick(object sender, EventArgs args)
{
    // First paint background, like Clear(Control.Background), or by
    // painting an image you have previously buffered that was the background.
    animationControl.CreateGraphics().DrawImage(0, 0, animationImages[animationTick++])); 
}

Я animation сам использую это в некоторых winforms элементах управления и буферизировал .net изображения, чтобы «очистить» фон, когда dot-net интересующий объект перемещается winforms или его нужно удалить.

.net

winforms

animation

2022-10-21T11:39:29+00:00