【问题标题】:load image into writeablebitmap将图像加载到 writeablebitmap
【发布时间】:2012-09-02 22:16:38
【问题描述】:

所以我试图将图像加载到 WriteableBitmap 中,但我得到了 NullReferenceException。不知道为什么,因为我认为这以前可以工作

BitmapImage b = new BitmapImage(new Uri(@"images/Car.jpg", Urikind.Relative)); WriteableBitmap wb = new WriteableBitmap(b);

就是这样。我将汽车图像作为项目中的资源。它工作正常,因为我可以创建一个 Image 控件并将其源设置为 BitmapImage 并显示它。 谢谢

【问题讨论】:

    标签: c# silverlight writeablebitmap


    【解决方案1】:

    从其他 SO 问题中可以看出,您得到空引用异常的原因似乎是 BitmapImage.CreateOptions Property 默认值为 BitmapCreateOptions.DelayCreation。您可以将其设置为BitmapCreateOptions.None,并在加载图像后创建WriteableBitmap

    BitmapImage img = new BitmapImage(new Uri("somepath",UriKind.Relative));
    img.CreateOptions = BitmapCreateOptions.None;
    img.ImageOpened += (s, e) =>
       {
           WriteableBitmap wbm = new WriteableBitmap((BitmapImage)s);
       };
    

    使用该代码,WritableBitmap 将等到 BitmapImage 加载完毕,然后才能将其分配给 WritableBitmap

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-07-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-03
      • 2015-01-07
      • 1970-01-01
      相关资源
      最近更新 更多