我在面板和表单上刷新图形时遇到问题。 当我绘制图像时,它工作正常但当我想用Panel.Refresh替换它时,它使事件处理程序自动激活自己没有结束。如果我使用Panel.Update,它只会将第二个图像绘制到第一个图像上。很多人建议我使用Invalidate方法但是它具有相同的无限循环问题。
Bitmap bitmap = new Bitmap(Resources.Image1);
private void panel1_Paint(object sender, PaintEventArgs e)
{
if (parameter == 0) { bitmap = new Bitmap(Resources.Image1); }
if (parameter >= 2) { bitmap = new Bitmap(Resources.Image2); }
e.Graphics.DrawImage(bitmap, 60, 10);
panel1.Refresh();
}
答案 0 :(得分:0)
panel1.Refresh();
触发paint事件。我把刷新代码放在参数值改变的地方。