c#覆盖背景图像的高对比度

时间:2015-02-17 15:51:27

标签: c# image background contrast

我无法找到答案:

我的表格上有一张背景图片,即使系统处于高对比度模式,我仍希望保持可见状态。是否可以输入覆盖HC模式的代码?

我已经在Form Load事件中尝试了这一点,但没有运气 - 没有图形定义。 (不确定这甚至是一个可行的解决方案):

OnPaint: e.Graphics.DrawImage(new Bitmap(BackgroundImage), 0, 0);

除了在我的表单中创建PictureBox并以此方式放置图像之外,是否有人知道如何显示表单的BG图像?

1 个答案:

答案 0 :(得分:1)

覆盖OnPaintBackground方法:

protected override void OnPaintBackground(PaintEventArgs e)
{
    e.Graphics.DrawImage(new Bitmap(BackgroundImage), e.ClipRectangle);
}

DrawImage重载会拉伸图像以适合矩形。如果ClipRectangle不起作用(抱歉,我现在无法对此进行测试!),请创建一个具有背景尺寸的新Rectangle

相关问题