如何将图像作为背景应用于面板控件

时间:2010-05-27 10:38:16

标签: windows-mobile

我想在Windows移动应用程序中将一个图像放置到面板控件中,但在该控件的属性中,我们只有backgroundcolor。在这种情况下要做什么?

我正在使用VS 2008,Windows Mobile 6专业版

1 个答案:

答案 0 :(得分:1)

创建一个继承自Panel并覆盖OnPaintBackground的新类。

class MyPanel : Panel
{
    private Image m_image;

    public Image BackgroundImage
    {
        get { return m_image; }
        set
        {
            if (m_image != null) m_image.Dispose();
            m_image = value;
        }
    }

    protected override void OnPaintBackground(PaintEventArgs e)
    {
        if (BackgroundImage == null)
        {
            base.OnPaintBackground(e);
        }
        else
        {
            e.Graphics.DrawImage(BackgroundImage, 0, 0);
        }
    }
}