Я использую библиотеку AlphaMobileControls для .NET Compact Framework. Я использую AlphaImage.CreateFromResource (imageResourceName) для создания объекта AlphaImage. Проблема в том, что этот метод генерирует исключение NullReferenceException. Глядя на код для этого метода, проблема в том, что эта строка кода возвращает ноль:
MemoryStream stream =
(MemoryStream)Assembly.GetCallingAssembly().GetManifestResourceStream(imageResourceName);
Раньше это работало нормально, а сейчас - нет, и я не могу понять, почему. Кажется, я передаю правильное имя ресурса. Это ресурс, который я добавил на вкладке Ресурсы свойств проекта. Также в папке «Ресурсы» находится файл изображения, а для параметра «Действие построения» задано значение «Встроенный ресурс». Я даже использовал этот код для извлечения доступных ресурсов, и я использовал одно из возвращаемых значений:
string[] names = Assembly.GetCallingAssembly().GetManifestResourceNames();
Тогда я подумал, что, возможно, к моменту запуска кода метода AlphaImage.CreateFromResource () доступные ресурсы могут отличаться. Поэтому я изменил код, включив в него приведенный выше оператор, а затем выбросил исключение InvalidOperationException, если переданный ресурс не является доступным. Когда я запускаю программу и перебираю код с помощью отладчика, добавленного кода больше не существует, и InvalidOperationException не генерируется, и код будет выполняться, пока не возникнет исключение NullReferenceException. Я искал свои проекты, чтобы узнать, не была ли ссылка на другую версию AlphaMobileControls, отличную от той, в которой был измененный код, но я не смог найти ни одной.
Буду признателен за любую помощь, заранее спасибо!