我想在WinForms应用程序中的ListView
单元格中绘制动画GIF。
这是我尝试这样做的代码的一部分:
首先我从resorce加载图片:
public partial class MainWindow : Form
{
Image bmp = Properties.Resources.loader;
bool animated = false;
....
然后我在DrawSubItem
上的ListView
事件中加载GIF:
private void listView1_DrawSubItem(object sender, DrawListViewSubItemEventArgs e)
{
if (e.ColumnIndex == 1)
{
if (!animated)
{
ImageAnimator.Animate(bmp, new EventHandler((object _o, EventArgs _e) =>
{
this.Invalidate();
}));
animated = true;
}
ImageAnimator.UpdateFrames();
e.Graphics.DrawImage(bmp, e.Bounds.Location);
}
else
{
TextRenderer.DrawText(e.Graphics, e.SubItem.Text, this.Font, e.Bounds, SystemColors.ControlText);
}
}
它显示图像但不显示动画。
如果有人在ListView
单元格中绘制动画GIF的示例,我将非常感激。