在我的工具中,我使用面板来更改页面。每个页面都有自己的面板,当我更改页面时,我会发送带有控件的面板。在我用作画布的面板上,我有以下绘制事件:
private void panelContent_Paint(object sender, PaintEventArgs e)
{
e.Graphics.CompositingQuality = CompositingQuality.HighQuality;
e.Graphics.SmoothingMode = SmoothingMode.HighQuality;
// Paints a border around the panel to match the treeview control
e.Graphics.DrawRectangle(Pens.CornflowerBlue,
e.ClipRectangle.Left,
e.ClipRectangle.Top,
e.ClipRectangle.Width - 1,
e.ClipRectangle.Height - 1);
e.Graphics.Flush();
base.OnPaint(e);
}
这种方法基本上在面板周围绘制了一个漂亮的边框,因此看起来更好。出于某种原因,当我在此面板上方移动另一个表单时,构成边框的线条开始运行一点。偶尔也会从边框画出细线。该问题仅在整个面板重新绘制之前发生几秒钟。我能做些什么来防止这种情况发生吗?