Silverlight 4,图像到字节数组

时间:2010-09-16 08:48:34

标签: silverlight image bytearray

假设我在数据库中有应用程序菜单及其图标图像(二进制数据)。我使用byte []类型的图标提取这些菜单。但是如果没有设置图标,那么我想使用默认图标,它不是来自数据库,而是来自xap(在Resources文件夹中)。要显示来自数据库的图标,我使用IConverter(byte []到image),它基于以下问题的代码:

Silverlight 4.0: How to convert byte[] to image?

为了能够使用我的byte [] - to-image IConverter,我还希望将我的默认图标转换为来自xap的byte []。我怎么能这样做?以下问题建议使用WriteableBitmap类,但我不知道如何从xap源创建WriteableBitMap:

Silverlight: image to byte[]

2 个答案:

答案 0 :(得分:1)

我可能会错过理解这里的问题(这里可能需要更多有关转换器的详细信息),但是如果转换器类只返回基于其字节的图像,则无法从数据库中测试空字节,然后返回你的默认图片?

public class MyConveter : IConverter {
    public Image ConvertImage(byte[] bytes) {
        if (bytes == null) return GetDefaultImage();
        else return ConverterBytesToImage(bytes);
    }
}

这样你只需返回一个图像作为方法声明,并且实现处理空字节的情况。

这是在正确的轨道上吗?

答案 1 :(得分:0)

由于您的默认图标是资源,您可以将其作为ResourceStream打开,只需将其作为字节读取。

这会满足您的要求吗?

相关问题