Как использовать строку вместо «name» для properties.resources. «Name» - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть куча аудиофайлов, хранящихся в ресурсах, так как я хочу, чтобы программа переносила их, я хочу назначить каждый создаваемый файл каждому звуковому проигрывателю, хранящемуся в массиве звуковых проигрывателей, каждое имя ресурсов совпадает со строкамихранящийся в другом массиве

strings[] names = new string[80];
Soundplayer[] sounds = new Soundplayer[80];
Soundplayer mySound;

for (int i = 0; i < sounds.Length; i++)
{
    sounds[i] = mySound = new Soundplayer(Properties.Resources.names[i])
}

он просто говорит, что ресурсы не содержат определения имен, как это можно обойти.Разве ресурсы ._____ - это не строка?

1 Ответ

0 голосов
/ 11 декабря 2018

Вы можете получить к нему доступ, используя Properties.Resources.ResourceManager.GetString:

var name = names[i]; // make sure this is initialized
var filename = Properties.Resources.ResourceManager.GetString(name);
sounds[i] = mySound = new Soundplayer(filename);
...