显示messagebox时不调用OnPaint

时间:2012-08-08 06:51:00

标签: c# messagebox onpaint

在我们的项目中,我创建了一个表单并运行如下:

 Application.run(myform);

在这种形式中,我们需要绘制一些内容,以便覆盖它的OnPaint方法并且通常没有问题,但是当我们显示消息框或形式时,从不调用OnPaint:

 Messagebox.show("something");

 formA.showDialog();

因此,当用户拖动消息框时,它将离开轨道,因为背景无法重新绘制。 有谁知道为什么以及如何解决这个问题?

1 个答案:

答案 0 :(得分:-1)

您可以通过调用Refresh方法重新制作表单。

var timer = new Timer();
timer.Interval = 1000;
timer.Tick += new EventHandler(timer_Tick);
timer.Start();

void timer_Tick(object sender, EventArgs e)
{
    Refresh();
}