Как я могу получить доступ к изображениям моих приложений, которые находятся в моих ресурсах? - PullRequest
0 голосов
/ 15 декабря 2009

Я кратко объясню, что я хочу, чтобы моя программа делала.

В моей форме много изображений, и я хочу, чтобы источник изображения изменился в событии MouseEnter.

Итак, если пользователь наводит указатель мыши на кнопку, я бы хотел, чтобы кнопка светилась. Конечно, я сделал два изображения для управления изображением. Один нормальный, а другой светящийся. Я пытаюсь сделать одно событие в mouseEnter для всех изображений, потому что я не хочу загрязнять свой код более чем 60 событиями, которые по сути делают одно и то же.

Кто-то предложил мне сделать что-то вроде этого:

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

Честно говоря, это будет работать точно , как мне нужно. Но я немного запутался из-за метода GetImage ().

Как именно я это закодировал бы? Все мои изображения, как светящиеся, так и не светящиеся, уже добавлены в мои ресурсы. Как бы я вызвал их в соответствии с именем PictureBox?

Я попытался создать словарь, ключом которого будет имя pictureBox, а значением - файл ресурсов, но без кубиков.

Пожалуйста, помогите!

1 Ответ

1 голос
/ 15 декабря 2009

Как то так?

    public Image GetImage(string name)
    {
        switch (name)
        {
            case "PictureBox1":
                return Properties.Resources.Picture1;
            case "PictureBox2":
                return Properties.Resources.Picture2;
            default:
                return null;
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...