Files
v2rayN/v2rayN/v2rayN.Desktop/Views/QrcodeView.axaml.cs
2025-01-30 17:10:05 +08:00

39 lines
856 B
C#

using Avalonia.Controls;
using Avalonia.Media.Imaging;
namespace v2rayN.Desktop.Views
{
public partial class QrcodeView : UserControl
{
public QrcodeView()
{
InitializeComponent();
}
public QrcodeView(string? url)
{
InitializeComponent();
txtContent.Text = url;
imgQrcode.Source = GetQRCode(url);
// btnCancel.Click += (s, e) => this.Close();
}
private Bitmap? GetQRCode(string? url)
{
var bytes = QRCodeHelper.GenQRCode(url);
return ByteToBitmap(bytes);
}
private Bitmap? ByteToBitmap(byte[]? bytes)
{
if (bytes is null)
return null;
using var ms = new MemoryStream(bytes);
return new Bitmap(ms);
}
}
}