0

我正在创建一个控件,该控件继承自 aWindows.Forms.Panel并具有要在其上绘制图像的特定区域。

此代码在我想要的区域上绘制图像,但不会拉伸它。

private void PaintPanel(Graphics _g)
{
    _g.FillRegion(new SolidBrush(BorderColor), BorderRegion);
    _g.FillRegion(new TextureBrush(ContentImage), ContentRegion);
    regionNeedsRefresh = false;
}

此代码在我想要的矩形上绘制图像,并将其拉伸以适合矩形,但它没有在我想要的确切区域上绘制:

private void PaintPanel(Graphics _g)
{
    _g.FillRegion(new SolidBrush(BorderColor), BorderRegion);
    _g.DrawImage(ContentImage, ContentRegion.GetBounds(_g));
    regionNeedsRefresh = false;
}

所以我需要的是我猜测的两种解决方案......

任何帮助将非常感激!

4

1 回答 1

0

您可以使用Graphics.DrawImage, 并简单地将对象的Clip属性设置为您要在操作前后绘制的。GraphicsRegion

于 2013-04-26T13:37:10.893 回答