Некоторые люди спрашивают об этом в коде и не получают ответа.
Потратив много часов на поиски, я нашел очень простой метод, я не нашел ни одного примера, и поэтому я поделился здесь своим, который работает с изображениями. (мой был .gif)
Резюме:
Он возвращает BitmapFrame, который, по-видимому, нравится «получателям» ImageSource.
Использование:
doGetImageSourceFromResource ("[YourAssemblyNameHere]", "[YourResourceNameHere]");
Метод:
static internal ImageSource doGetImageSourceFromResource(string psAssemblyName, string psResourceName)
{
Uri oUri = new Uri("pack://application:,,,/" +psAssemblyName +";component/" +psResourceName, UriKind.RelativeOrAbsolute);
return BitmapFrame.Create(oUri);
}
Усвоение:
Судя по моему опыту, строка пакета не является проблемой, проверьте ваши потоки, особенно если при чтении в первый раз указатель указывается на конец файла, и вам необходимо сбросить его на ноль, прежде чем читать снова.
Я надеюсь, что это спасет вас от многих часов, которые я хотел бы получить для меня!