Windows phone 7 使用sql ce for windows phone 7对图像进行数据绑定

Windows phone 7 使用sql ce for windows phone 7对图像进行数据绑定,windows-phone-7,sql-server-ce,Windows Phone 7,Sql Server Ce,我一直在使用SQLCE将一些数据带到我的应用程序中。现在我需要添加一些图片,使它看起来漂亮。我想知道的是 必须进行一些图像到字节的转换 检索图像字节码并转换回图像 我被第二部分卡住了,我该怎么继续 任何链接或例子都需要参考 非常感谢。以下是我过去使用过的一些想法 数据库中的图像列: [Column] public byte[] MyImage { get { return _myImage; } set { if (_myImage != value) {

我一直在使用SQLCE将一些数据带到我的应用程序中。现在我需要添加一些图片,使它看起来漂亮。我想知道的是

  • 必须进行一些图像到字节的转换
  • 检索图像字节码并转换回图像
  • 我被第二部分卡住了,我该怎么继续

    任何链接或例子都需要参考


    非常感谢。

    以下是我过去使用过的一些想法

    数据库中的图像列:

    [Column]
    public byte[] MyImage
    {
      get { return _myImage; }
      set
      {
        if (_myImage != value)
        {
          _myImage = value;
          NotifyPropertyChanging("MyImage");
          NotifyPropertyChanged("MyImage");
        }
      }
    }
    
    保存图像:

    public void AddNewImage(Stream image, string url)
    {
      byte[] byteArray = GetImageBytes(image);
    
      var item = new MyDatabaseItem { Count = 1, ItemImageUrl = url, MyImage = byteArray };
      MyDatabaseItemModel.Add(item);
      MyDatabaseDB.MyDatabaseItems.InsertOnSubmit(item);
      MyDatabaseDB.SubmitChanges();
    }
    
    获取图像:

    private byte[] GetImageBytes(Stream stream)
    {
      using (var ms = new MemoryStream())
      {
        var writeableBitmap = PictureDecoder.DecodeJpeg(stream, 200, 200);
        writeableBitmap .SaveJpeg(ms, 200, 200, 0, 30);
        return ms.ToArray();
      }
    }
    
    使用值转换器:

    public class ImageConverter: IValueConverter
    {
      public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
      {
        if (value is byte[])
        {
          var memoryStream = new MemoryStream(value as byte[]);
          varwriteBitmap = PictureDecoder.DecodeJpeg(memoryStream, 200, 200);
          return writeBitmap;
        }
        else
          return null;
        }
    
        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
          throw new NotImplementedException();
        }
    }
    
    最后将其绑定到XAML中:

    <Image Source="{Binding MyImage, Converter={StaticResource ImageConverter}}" Stretch="UniformToFill"/>
    
    
    
    Oops我错过了使用System.Windows.Resources;使用System.Windows.Media.Imaging;使用微软手机;这些参考资料。很抱歉NotifyPropertyChange返回此错误“是一个类型,但用作变量”。我错过了什么吗?这是一个无法解决的资源。。还有什么要补充的吗?我不知道你有什么问题。您是否了解了在Windows Phone上使用SQL CE的基本知识?是的,先生,我一直在把字节数组从数据库转换成图像。