【问题标题】:Convert Byte [] to image in silverlight在silverlight中将字节[]转换为图像
【发布时间】:2014-03-27 08:43:56
【问题描述】:

我有一个 Silver light 应用程序需要在 Datagrid 中绑定图像,我有一个图像为 byte[]。我在observablecollection<User>我有大约 500 多个数据@如何将我的数据转换为图像,在 asp.net 中我们可以使用 datarowbinding 事件,但在 silverlight 中我们该怎么做

【问题讨论】:

    标签: image silverlight bytearray


    【解决方案1】:

    在传统的 asp.net 中,我们有这样的事件类型,我们可以从中管理行绑定,在 silverlight 中,您可以使用 ivalueconvertor 来实现。 将您的图像与图像属性数据绑定,同时定义您的转换器以将字节 [] 转换为图像

    <UserControl.Resources>
         <Myerp:ConvertByteArrayToImge x:Key="ConvertByteArrayToImge"></Myerp:ConvertByteArrayToImge>
    </UserControl.Resources>
    

    在你的形象中

    <Image x:Name="UploadedIcon" Grid.Column="0" Height="16" Width="16" HorizontalAlignment="Left" VerticalAlignment="Center" Source="{Binding Icon,Converter={StaticResource ConvertByteArrayToImge}}" />
    

    转换器类

    public class ConvertByteArrayToImge : IValueConverter
        {
            public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
            {
                if (value is byte[])
                {
                    MemoryStream memStream = new MemoryStream((Byte[])value);
                    memStream.Seek(0, SeekOrigin.Begin);
                    BitmapImage empImage = new BitmapImage();
                    if (memStream.Length > 0)
                        empImage.SetSource(memStream);
                    return empImage;
                }
                else
                    return null;
            }
    
            public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
            {
                throw new NotImplementedException();
            }
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-18
      • 1970-01-01
      • 2011-11-26
      • 1970-01-01
      • 2015-06-13
      • 2018-11-30
      相关资源
      最近更新 更多