FlowLayoutPanel图形因自动滚动而变得混乱

时间:2016-02-02 09:49:10

标签: c# winforms autoscroll flowlayoutpanel

private void Container_Paint(object sender, PaintEventArgs e)
{
    //e.Graphics.TranslateTransform(printersContainer.AutoScrollPosition.X, printersContainer.AutoScrollPosition.Y);

    Pen printerBorderPen = new Pen(ColorCode.BorderForm, 3);


    foreach (Control c in this.Controls)
    {
        if (c is ucPrinterControl)
        {
            Graphics graphics = c.CreateGraphics();
            graphics.DrawRectangle(printerBorderPen, e.ClipRectangle.Left, e.ClipRectangle.Top, e.ClipRectangle.Width - 1, e.ClipRectangle.Height - 1);
        }
    }

    Pen formBorderPen = new Pen(ColorCode.BorderForm, 3);

    e.Graphics.DrawRectangle(formBorderPen, new Rectangle(0, 0, Container.Width, Container.Height));
}

如上面的代码所示,我使用Graphics在我正在创建的UI应用程序中绘制矩形小部件。当我使用自动滚动时,之前不可见的小部件(在当前视图下)被查看但显示为空。当我再次滚动你时也是如此。但是当我最小化并最小化窗口时,它会出现在当前视图中。

如上面的代码所示,我使用TranslateTransform,但它没有解决问题。

0 个答案:

没有答案