我创建了一个继承自Stream类并实现了大多数方法的类。 这个流类是只读的,所以我没有实现SetLength和Write方法。通常它工作得很好,但是当我使用以下代码行时:
BitmapFrame.Create(stream, BitmapCreateOptions.IgnoreColorProfile, BitmapCacheOption.None);
有时(大约40%的时间)它会抛出我在流的SetLength方法中引发的相同异常,这意味着BitmapFrame.Create方法正在尝试更改流的长度。 我怎样才能克服这个问题?我需要BitmapMetadata类。为什么BitmapFrame.Create甚至试图编辑我的流?还有其他方法可以从只读流中获取BitmapMetadata吗?