请问在WPF中怎样将一个WriteableBitmap对象设置为可写

butnet 2012-09-28 01:58:54
请问在WPF中怎样将一个WriteableBitmap对象设置为可写
比如下代码:

WriteableBitmap img=new WriteableBitmap(source);
img.Freeze();
...

img.WritePixels(...);//这时会报异常,说这个对象不可修改.那么在这句代码之前,我如何修改它的可写属性.
...全文
273 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Trent1985 2012-09-29
  • 打赏
  • 举报
回复
还有,你的确定是WPF?writeablebitmap没有这个writepixels吧
Trent1985 2012-09-29
  • 打赏
  • 举报
回复
将wriablebitmap对象转为byte[],然后对byte[]修改,改完后在重新生成wriablebitmap
lizhibin11 2012-09-29
  • 打赏
  • 举报
回复
img.Freeze()这行删除,或者放在WritePixels之后.
butnet 2012-09-29
  • 打赏
  • 举报
回复
我用的是.net4.0的库. 你看看你的. 我的有.
butnet 2012-09-28
  • 打赏
  • 举报
回复
首先是我从文件加载图片

//加载图片;
BitmapImage image = new BitmapImage();
image.BeginInit();
image.StreamSource = mem;
image.EndInit();
image.Freeze();

然后将BitmapImage对象image赋给Image的Source属性

Image imageUI = new Image();
imageUI.Source = image;

在修改图片时我使用WriteableBitmap类,
通过WriteableBitmap类的WritePixels方法修改图片内容,
写完之后再赋给Image.Source

第一次没有问题,
第二次时会提示:
其他信息: 指定的类型“System.Windows.Media.Imaging.WriteableBitmap”值必须将 IsFrozen 设置为 false,以进行修改。
异常.
butnet 2012-09-28
  • 打赏
  • 举报
回复
回家后, 附个详细情况. 你可以用上面的代码 简单测试下 就看到了
VisualTeam 2012-09-28
  • 打赏
  • 举报
回复
修改属性?属性是可读的?
具体错误是什么呢?
butnet 2012-09-28
  • 打赏
  • 举报
回复
咋没人回复呢,
顶呀.

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧