c# – 调用WriteableBitmap.WritePixels方法

c# – 调用WriteableBitmap.WritePixels方法,第1张

概述我正在尝试调用WriteableBitmap.WritePixels方法,但我似乎无法理解参数. MSDN文章非常愚钝(或者说我说… null?),我不明白如何使用该方法. 编辑: 我试图修改这篇文章的代码: http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.writeablebitmap%28v=VS.90% 我正在尝试调用WriteableBitmap.WritePixels方法,但我似乎无法理解参数.
MSDN文章非常愚钝(或者说我说… null?),我不明白如何使用该方法.

编辑:
我试图修改这篇文章的代码:
http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.writeablebitmap%28v=VS.90%29.aspx

PixelFormat pf = PixelFormats.Rgba128float;        WriteableBitmap wb = new WriteableBitmap(wIDth * 5,height * 5,100,pf,new BitmapPalette(new List<@R_403_6004@> { @R_403_6004@.FromArgb(255,255,0) }));        byte[] @R_403_6004@Data = { 0,0 };        wb.WritePixels(new Int32Rect(0,1,1),@R_403_6004@Data,4,0);        Background.source = wb;

在最后一行之前的行中,调试器声称缓冲区(@R_403_6004@Data)的大小不够.

EDIT2:
我再试一次:

voID RefreshGraphics()    {        PixelFormat pf = PixelFormats.Pbgra32;        WriteableBitmap wb = new WriteableBitmap(wIDth * 5,0) }));        byte[] @R_403_6004@Data = new byte[1000];        byte t = 0;        for (int i = 0; i < 1000; i++)            @R_403_6004@Data[i] = t++;        wb.WritePixels(new Int32Rect(0,10,10),0);        Background.source = wb;    }

现在“价值不在预期的范围”.
stackTrace不知道哪一个…

编辑3:
问题解决了!
不知道如何或为什么,但代码的作品(我怕改变它…)

解决方法 检查高度和宽度的值.也许字节数组根本不够大! 总结

以上是内存溢出为你收集整理的c# – 调用WriteableBitmap.WritePixels方法全部内容,希望文章能够帮你解决c# – 调用WriteableBitmap.WritePixels方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1258185.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存