private void Start() { scanner = ScannerView.Instance; backRenderer.color = new Color(backRenderer.color.r, backRenderer.color.g, backRenderer.color.b, 0); fillRenderer.color = new Color(fillRenderer.color.r, fillRenderer.color.g, fillRenderer.color.b, 0); backRenderer.sortingOrder = nextNoteView.ringSpriteRenderer.sortingOrder + 1; fillRenderer.sortingOrder = backRenderer.sortingOrder + 1; }
public App() { var scannedLabel = new Label { Text = "Scanned Value", HeightRequest = 50, }; var scan = new ScannerView { HeightRequest = 400, WidthRequest = 400, CornerRadius = 20, }; var btn = new Button { Text = "Push To start scanner", HeightRequest = 50, }; scan.OnCancelPressed = () => scannedLabel.Text = "Canceled"; var options = new MobileBarcodeScanningOptions(); options.UseFrontCameraIfAvailable = true; options.PossibleFormats = new List <ZXing.BarcodeFormat> { ZXing.BarcodeFormat.QR_CODE }; btn.Clicked += (s, e) => { scan.StartScanner((res) => { scan.StopScanner(); scannedLabel.Text = res.Text; }, options); }; // The root page of your application MainPage = new ContentPage { Content = new StackLayout { VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.Center, Children = { scan, scannedLabel, btn } } }; }
public App() { var scannedLabel = new Label { Text = "Scanned Value", HeightRequest = 50, }; var scan = new ScannerView { HeightRequest = 400, WidthRequest = 400, CornerRadius=20, }; var btn = new Button { Text = "Push To start scanner", HeightRequest=50, }; scan.OnCancelPressed = () => scannedLabel.Text = "Canceled"; var options = new MobileBarcodeScanningOptions (); options.UseFrontCameraIfAvailable = true; options.PossibleFormats = new List<ZXing.BarcodeFormat> { ZXing.BarcodeFormat.QR_CODE }; btn.Clicked += (s, e) => { scan.StartScanner((res)=>{ scan.StopScanner(); scannedLabel.Text=res.Text; },options); }; // The root page of your application MainPage = new ContentPage { Content = new StackLayout { VerticalOptions = LayoutOptions.Center, HorizontalOptions=LayoutOptions.Center, Children = { scan, scannedLabel, btn } } }; }
/// <summary> /// Applies saved settings to the ScannerView /// </summary> /// <param name="view">The ScannerView</param> public static void ApplyScannerViewSettings(ScannerView view) { if (string.IsNullOrEmpty(Settings.Default.gridOrder)) { return; } try { //The string is like this: //<ColumnName>,<index>,<visible>|<ColumnName>,<index>,<visible>|<ColumnName>,<index>,<visible>|etc. string[] parts; foreach (string piece in Settings.Default.gridOrder.Split('|')) { parts = piece.Split(','); if (view != null) { view.scannerGrid.Columns[parts[0]].DisplayIndex = Convert.ToInt32(parts[1]); view.scannerGrid.Columns[parts[0]].Visible = parts[2] == "True"; } } } catch (NullReferenceException) { //Something went wrong, ignore } catch (IndexOutOfRangeException) { //Something went wrong, ignore } catch (FormatException) { //Something went wrong, ignore } //refresh the context menu if (view != null) { view.UpdateColumnList(); } }
public async void ShowScan() { var page = MainPage.GetInstance(); var httpClient = new HttpClient(); string validStr = ""; try { var result = await httpClient.PostAsJsonAsync(Definitions.Localhost + "api/KiemKe/BKK_CHECK?dv_QL=" + MaDV + "&bkk_ID=" + MaBKK + "&ngay_TAO=" + Date.ToString("yyyy-MM-dd"), new { }); var content = await result.Content.ReadAsStringAsync(); JObject rss = JObject.Parse(content); var resultAPI = rss["result"]; validStr = (resultAPI as JArray).First["result"].ToString(); } catch { await page.DisplayAlert("Lỗi", "Kết nối server bị lỗi, kiểm tra lại đường dẫn!", "Ok"); return; } if (validStr != "Hop Le") { await page.DisplayAlert("Lỗi", "Thông tin kiểm kê không đúng hoặc bản kiểm kê đã bị đóng!", "Ok"); return; } using (UserDialogs.Instance.Loading("Waiting..")) { ScannerView scanPage = ScannerView.GetInstance(); //scanPage.InitData(Date, MaBKK, MaDV); await App.Current.MainPage.Navigation.PushAsync(scanPage, true); } }
public ScannerPage(ScanningOptionsBase options = null, View customOverlay = null) : base() { _scannerView = new ScannerView { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Options = options, }; _scannerView.SetBinding(ScannerView.IsAnalyzingProperty, new Binding(nameof(IsAnalyzing))); _scannerView.SetBinding(ScannerView.IsScanningProperty, new Binding(nameof(IsScanning))); _scannerView.SetBinding(ScannerView.ResultProperty, new Binding(nameof(Result))); _scannerView.OnScanResult += (result) => { this.OnScanResult?.Invoke(result); }; var grid = new Grid { VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, }; grid.Children.Add(_scannerView); if (customOverlay != null) { Overlay = customOverlay; grid.Children.Add(Overlay); } // The root page of your application Content = grid; }
/// <summary> /// Saves the settings of the ScannerView /// </summary> /// <param name="view">The ScannerView</param> public static void SaveScannerViewSettings(ScannerView view) { try { StringBuilder sbOut = new StringBuilder(); string pipe = ""; foreach (DataGridViewColumn col in view.scannerGrid.Columns) { //Add the column name and order sbOut.Append(pipe); sbOut.Append(col.Name); sbOut.Append(","); sbOut.Append(col.DisplayIndex); sbOut.Append(","); sbOut.Append(col.Visible); pipe = "|"; } Settings.Default.gridOrder = sbOut.ToString(); } catch (Exception) { //Something went wrong, ignore } }
public async void Scan() { try { FileService.CreateFileData(); } catch { await NavigationService.GetTopPage().DisplayAlert("Lỗi", "App chưa được quyền truy cập dữ liệu trong máy", "OK"); return; } BanKiemKe banKiemKe = new BanKiemKe(); foreach (BanKiemKe item in AppValue.banKiemKes) { if (CurrentBKK == item.KK_CODE) { banKiemKe = item; break; } } AppValue.banKiemKe = banKiemKe; if (Choose1) //online { AppValue.KKType = 1; } else //offline { AppValue.KKType = 2; } using (Acr.UserDialogs.UserDialogs.Instance.Loading("Loading..")) { if (Choose1) //KK ONLINE { } else //KK OFFLINE { //LẤY RA KIEMKE TRONG LOCAL DATA KiemKe kiemke = DataProvider.GetKiemKe(banKiemKe); if (kiemke == null) { kiemke = new KiemKe { BKK = banKiemKe, RECORDS = new List <ChiTietBanKiemKe>() }; LocalData.KiemKes.Add(kiemke); } //Lưu lại thông tin kiểm kê hiện tại AppValue.kiemKe = kiemke; } //chuyển sang page quét mã var scanPage = ScannerView.GetInstance(); scanPage.SetBKKInfor(); await App.Current.MainPage.Navigation.PushAsync(scanPage); } }
public MainWindow() { InitializeComponent(); DataContext = new ScannerView(); }
public async void KiemKe() { string error = CheckValidInfor(); if (error != "") { var page = NavigationService.GetTopPage(); await page.DisplayAlert("Lỗi", error, "OK"); return; } ThietBi thietbi = new ThietBi(); if (AppValue.KKType == 1) //ONLINE { if (Choose1) //nhập mã { var httpClient = new HttpClient(); JsonSerializer serializer = new JsonSerializer(); var response = await httpClient.GetStringAsync(Definitions.Localhost + "api/ThietBi/ThietBiById?thietbiId=" + MaTB); JObject rss2 = JObject.Parse(response); var resultAPI2 = rss2["result"]; thietbi = (ThietBi)serializer.Deserialize(new JTokenReader(resultAPI2), typeof(ThietBi)); if (thietbi == null) { var scanPage = ScannerView.GetInstance(); await scanPage.DisplayAlert("Lỗi", "Thiết bị không tồn tại hoặc đã bị xóa!", "OK", "Hủy"); scanPage.popupIsOpen = false; return; } } else //nhập tên { thietbi.TB_TEN = TenTB; thietbi.TB_NGAY_MUA = new DateTime(0001, 01, 01); thietbi.TB_NGAY_BH = new DateTime(0001, 01, 01); thietbi.TB_NGAY_HET_BH = new DateTime(0001, 01, 01); thietbi.TB_Nam_SX = 0; } } else//OFFLINE { if (Choose1) { thietbi.TB_ID = MaTB; } else { thietbi.TB_TEN = TenTB; } } using (Acr.UserDialogs.UserDialogs.Instance.Loading("Loading..")) { StockTakingView sw = new StockTakingView(thietbi); await App.Current.MainPage.Navigation.PushAsync(sw, true); } }