我想要做的是,在进行长时间加载操作时,使我的System.Windows.Forms.TreeView控件中节点的图标闪烁。
如果将每个帧加载到ImageList中,您可以使用循环更新到每个帧。示例:
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();
}
显然,实现这个的方法不止一种,但以下是基本思路。