Наличие BitmapFrame.Create() в моем коде нарушает масштабирование Winforms DPI - даже если код не запускается
У меня есть эта функция для проверки глубины цвета PNG:
MemoryStream stream = new MemoryStream(File.ReadAllBytes(path));
var source = BitmapFrame.Create(stream, BitmapCreateOptions.IgnoreImageCache, BitmapCacheOption.OnDemand);
return source.Format.BitsPerPixel;
Каждый раз, когда запускается этот код, масштабирование DPI приложения прерывается и сбрасывается до 100%, а окно больше не разворачивается.
Мне удалось выделить строку кода, которая вызывает это, и это BitmapFrame.Create().
Это произойдет даже, если я полностью пропущу код, например:
return 32;
MemoryStream stream = new MemoryStream(File.ReadAllBytes(path));
var source = BitmapFrame.Create(stream, BitmapCreateOptions.IgnoreImageCache, BitmapCacheOption.OnDemand);
return source.Format.BitsPerPixel;
Ни одна из других строк после "return 32" не будет запущена, но ошибка все равно сработает, если я запустил функцию. Это работает, только если я закомментирую строки.
Есть идеи? Я просто не понимаю, как это вообще возможно, что затрудняет отладку.