如何访问我的资源中的应用程序映像?

时间:2009-12-14 22:16:48

标签: c# collections dictionary resources

我将简要解释一下我希望我的程序做什么。

我的表单上有很多图像,我想在MouseEnter事件上更改图像源。

因此,如果用户将鼠标移到按钮上,我希望按钮看起来发光。当然我为Image控件制作了两个图像。一个正常,一个发光。我正在尝试在mouseEnter上为所有图像制作一个单独的事件,因为我不想用60多个事件污染我的代码,而这些事件基本上都在做同样的事情。

有人建议我做这样的事情:

void HeroMouseEnter(object sender, EventArgs e)
{    
    ((PictureBox)sender).Image =  GetImage(((PictureBox)sender).Name)           
}

老实说,这可以完全我需要它。但我对GetImage()方法感到有点困惑。

我将如何编码?我的所有图像,包括发光图像和非发光图像都已添加到我的资源中。我如何根据PictureBox的名称​​召唤

我尝试制作一个字典,其中键是pictureBox的名称,值是资源文件,但没有骰子。

请帮忙!

1 个答案:

答案 0 :(得分:1)

这样的东西?

    public Image GetImage(string name)
    {
        switch (name)
        {
            case "PictureBox1":
                return Properties.Resources.Picture1;
            case "PictureBox2":
                return Properties.Resources.Picture2;
            default:
                return null;
        }
    }