我尝试修改计时器中的图像,但图像不会改变。这就是我初始化图像的方式:
img = Image.FromFile(@"Resources\map.png");
这是在我的计时器内:
using (Graphics g = Graphics.FromImage(img))
{
g.TranslateTransform(-15, -15);
foreach(Location l in locations)
{
g.DrawImage(color[l.getColor()], l.getPoint());
}
}
BackgroundImage = img;
如果我在循环中加载文件中的图像,它可以正常工作,但我真的很想避免它。有谁知道如何解决这个问题?我尝试将Bitmap对象用于我的背景并在我的计时器上绘制地图,但它也不起作用。
编辑:
我现在这样解决了,但它仍然感觉不对,那么还有更好的方法吗?我甚至不明白为什么需要这样做:
using (Graphics g = Graphics.FromImage(bg = new Bitmap(img)))
{
g.TranslateTransform(-15, -15);
foreach(Location l in locations)
{
g.DrawImage(color[l.getColor()], l.getPoint());
}
}
BackgroundImage = bg;