[英]Generate and bind Barcode to image control in MAUI windows application
我正在处理 MAUI windows 应用程序。 我想从生成的条形码绑定图像源。 我正在使用以下 package 生成条形码。
https://www.nuget.org/packages/barcode#:~:text=The%20.,Plessey%2C%20USPS%2C%20and%20QR 。
我不想保存条形码图像文件。 我只想为字符串属性生成一个条形码,并将其转换为可以绑定到 ImageSource 属性的适当格式。 我没有收到任何异常,但条形码图像未显示在我的 UI 中。 我试过的这段代码。
public void GenerateQR()
{
//ToDo: Generate QR from last Enqueue data. Use QR generation library.
var myBarcode = BarcodeWriter.CreateBarcode(QrStringValue, BarcodeWriterEncoding.QRCode);
if (myBarcode.Verify())
{
QrCode = ImageSource.FromStream(() => myBarcode.ToStream());
}
}
在这里,QrStringValue 是一个字符串属性,它在按钮单击事件上不断变化。
private string _qrStringValue;
public string QrStringValue
{
get => _qrStringValue;
set
{
_qrStringValue = value;
OnPropertyChanged(nameof(QrStringValue));
}
}
而 QrCode 是绑定到 Image 控件的 ImageSource 属性。
private ImageSource _qrCode;
public ImageSource QrCode
{
get => _qrCode;
set
{
_qrCode = value;
OnPropertyChanged(nameof(QrCode));
}
}
<Image Source="{Binding SharedVM.QrCode}" Margin="90"/>
我是否需要 go 和一些 MAUI 特定的库来生成条形码并像下面这样显示? https://github.com/Redth/ZXing.Net.Maui
您可以尝试以下对我有用的代码:
public void GenerateQR()
{
//ToDo: Generate QR from last Enqueue data. Use QR generation library.
var myBarcode = BarcodeWriter.CreateBarcode(QrStringValue, BarcodeWriterEncoding.QRCode);
if (myBarcode.Verify())
{
QrCode = ImageSource.FromStream(() => new MemoryStream(myBarcode.ToPngBinaryData()));
}
}
这似乎BarcodeWriter.CreateBarcode不返回标准格式。
希望对你有效。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.