繁体   English   中英

WP7-如何从ViewModel绑定位图?

[英]WP7 - How to bind the Bitmap from ViewModel?

我在视图模型中有位图。 现在,我想从View Model绑定到XAML。

 public static String _imgQRCode;
        public String imgQRCode
        {
            get { return _imgQRCode; }
            set { this.RaiseAndSetIfChanged(x => x.imgQRCode, value); }
        }

位图:-

imgQRCode = GenerateQRCode(phoneNumber).ToString();

GenerateORCode: -

private static WriteableBitmap GenerateQRCode(string phoneNumber)
        {
            BarcodeWriter _writer = new BarcodeWriter();

            _writer.Renderer = new ZXing.Rendering.WriteableBitmapRenderer()
            {
                Foreground = System.Windows.Media.Color.FromArgb(255, 0, 0, 255),
            };

            _writer.Format = BarcodeFormat.QR_CODE;

            _writer.Options.Height = 400;
            _writer.Options.Width = 400;
            _writer.Options.Margin = 1;

            var barcodeImage = _writer.Write("tel:" + phoneNumber);
            return barcodeImage;
        }

在这里我不能绑定图像。 请让我有任何想法来绑定来自viewModel的图像。 提前致谢。

imgQRCode的数据类型从string更改为WriteableBitmap

您不能将图像绑定到字符串。 只要datacontext对于您的标签是正确的,就应该为位图定义一个属性,例如

WriteableBitmap QRCode { get; set; } // Implement INotifyPropertyChanged the way you do it

然后在其他属性设置器中设置QRCode,如下所示:

public String imgQRCode
        {
            get { return _imgQRCode; }
            set 
            { 
              this.RaiseAndSetIfChanged(x => x.imgQRCode, value); 
              this.QRCode = GenerateQRCode(value);
            }
        }

然后在XAML中,您可以执行<Image Source="{Binding Path=QRCode}" />

暂无
暂无

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

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