为什么我应该在使用Bitmap时保持流打开

gin*_*ray 2 .net c#

我想不通,为什么我应该保持流,而我使用打开BitmapImage.

我尝试关闭流并使用我的Image几种方式,一切都很好.

问题是,如果在初始化Image对象之后继续关闭流,我可以在什么情况下获得异常?

ang*_*son 5

Image课程将不会在整个图像中创建时通过无论是读Image.FromFile还是Image.FromStream,而是只读足够基本的查询,如大小和像素格式回应.

只有当您尝试以任何方式访问像素时(通常通过在屏幕上绘制图像),它才会读取图像数据.

这种惰性意味着它需要在其生命中需要的时候访问底层流(或文件).