FillRectangle对Bitmap中的Graphics没有影响?

时间:2009-08-26 15:12:31

标签: windows forms graphics drawing

我有代码:

using (Graphics g = control.CreateGraphics())
{
    Bitmap bm = new Bitmap(r.Width, r.Height, g);
    using (Graphics gbm = Graphics.FromImage(bm))
    {
        gbm.FillRectangle(Brushes.Green, r);
        form.BackgroundImage = bm;
        form.BackgroundImageLayout = ImageLayout.Zoom;
    }
}

但是FillRectangle似乎没有任何效果。 有什么想法吗?

2 个答案:

答案 0 :(得分:0)

您是否尝试过将FillRectangle作为此块中最后一次与图形相关的事情?随后的背景材料可能会导致OnPaint再次触发,导致您的矩形被涂上。根据此代码段的显示方式,每次重绘时都可能会发生这种情况。

答案 1 :(得分:0)

也许您可以尝试将代码复制到新的空白项目中,以查看FillRectangle是否仍无效。也许代码中其他地方的东西是罪魁祸首。