繁体   English   中英

Silverlight 4,图像到字节数组

[英]Silverlight 4, image to byte array

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

Silverlight 4.0:如何将byte []转换为图像?

为了能够使用我的byte []到图像IConverter,我还想将默认图标转换为来自xap的byte []。 我该怎么做? 以下问题建议使用WriteableBitmap类,但我不知道如何从xap源创建WriteableBitmap:

Silverlight:图像到字节[]

我可能想念这里的问题(这里可能需要更多有关转换器的详细信息),但是如果您的转换器类仅基于其字节返回图像,就不能只测试数据库中的空字节,然后返回默认图像?

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

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

这是在正确的轨道上吗?

由于您的默认图标是资源,因此您可以将其作为ResourceStream打开,并以字节为单位读取。

满足您的要求吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM