Si vous chargez chaque image dans une ImageList, vous pouvez utiliser une boucle pour mettre à jour chaque image. Exemple:
bool runThrobber = true;
private void AnimateThrobber(TreeNode animatedNode)
{
BackgroundWorker bg = new BackgroundWorker();
bg.DoWork += new DoWorkEventHandler(delegate
{
while (runThrobber)
{
this.Invoke((MethodInvoker)delegate
{
animatedNode.SelectedImageIndex++;
if (animatedNode.SelectedImageIndex >= imageList1.Images.Count) > animatedNode.SelectedImageIndex = 0;
});
Thread.Sleep(100);
}
});
bg.RunWorkerAsync();
}
De toute évidence, il y a plus de quelques façons de mettre en œuvre, mais est ici l'idée de base.
En regardant à nouveau cela, vous devriez vraiment vérifier et voir si l'index de l'image est dans les limites de l'imagelist.images compte avant de l'incrémenter. –