/// <summary>
        /// This method returns the first available Barcode Scanner. To enumerate and find a particular device use the device enumeration code.
        /// </summary>
        /// <returns>a boolean value based on whether it found a compatible scanner connected</returns>
        private async Task <bool> CreateDefaultScannerObjectAsync(BarcodeScannerInstance instance)
        {
            BarcodeScanner scanner = null;

            scanner = await BarcodeScanner.GetDefaultAsync();

            if (scanner == null)
            {
                UpdateOutput("Scanner not found. Please connect a Barcode Scanner.");
                return(false);
            }

            switch (instance)
            {
            case BarcodeScannerInstance.Instance1:
                scannerInstance1 = scanner;
                UpdateOutput("Instance1 Default Barcode Scanner created.");
                break;

            case BarcodeScannerInstance.Instance2:
                scannerInstance2 = scanner;
                UpdateOutput("Instance2 Default Barcode Scanner created.");
                break;

            default:
                return(false);
            }

            return(true);
        }
示例#2
0
        /// <summary>
        /// This method returns the first available Barcode Scanner. To enumerate and find a particular device use the device enumeration code.
        /// </summary>
        /// <returns>a boolean value based on whether it found a compatible scanner connected</returns>
        private async Task <bool> CreateDefaultScannerObjectAsync(BarcodeScannerInstance instance)
        {
            BarcodeScanner scanner = null;

            scanner = await DeviceHelpers.GetFirstBarcodeScannerAsync();

            if (scanner == null)
            {
                rootPage.NotifyUser("Barcode scanner not found. Please connect a barcode scanner.", NotifyType.ErrorMessage);
                return(false);
            }

            switch (instance)
            {
            case BarcodeScannerInstance.Instance1:
                barcodeScannerInstance1 = scanner;
                break;

            case BarcodeScannerInstance.Instance2:
                barcodeScannerInstance2 = scanner;
                break;

            default:
                return(false);
            }

            return(true);
        }
        /// <summary>
        /// This method claims the connected scanner.
        /// </summary>
        /// <returns>a boolean based on whether it was able to claim the scanner.</returns>
        private async Task <bool> ClaimBarcodeScannerAsync(BarcodeScannerInstance instance)
        {
            bool bClaimAsyncStatus = false;

            //select the instance to claim
            switch (instance)
            {
            case BarcodeScannerInstance.Instance1:

                claimedBarcodeScannerInstance1 = await scannerInstance1.ClaimScannerAsync();

                if (claimedBarcodeScannerInstance1 != null)
                {
                    UpdateOutput("Instance1 Claim Barcode Scanner succeeded.");
                    bClaimAsyncStatus = true;
                }
                else
                {
                    UpdateOutput("Instance1 Claim Barcode Scanner failed.");
                }
                break;

            case BarcodeScannerInstance.Instance2:

                claimedBarcodeScannerInstance2 = await scannerInstance2.ClaimScannerAsync();

                if (claimedBarcodeScannerInstance2 != null)
                {
                    UpdateOutput("Instance2 Claim Barcode Scanner succeeded.");
                    bClaimAsyncStatus = true;
                }
                else
                {
                    UpdateOutput("Instance2 Claim Barcode Scanner failed.");
                }
                break;

            default:
                return(bClaimAsyncStatus);
            }
            return(bClaimAsyncStatus);
        }
示例#4
0
        /// <summary>
        /// This method enables the connected scanner.
        /// </summary>
        /// <returns>a boolean based on whether it was able to enable the scanner.</returns>
        private async Task <bool> EnableBarcodeScannerAsync(BarcodeScannerInstance instance)
        {
            switch (instance)
            {
            case BarcodeScannerInstance.Instance1:
                await claimedBarcodeScannerInstance1.EnableAsync();

                rootPage.NotifyUser("Instance 1 ready to scan. Device ID: " + claimedBarcodeScannerInstance1.DeviceId, NotifyType.StatusMessage);
                break;

            case BarcodeScannerInstance.Instance2:
                await claimedBarcodeScannerInstance2.EnableAsync();

                rootPage.NotifyUser("Instance 2 ready to scan. Device ID: " + claimedBarcodeScannerInstance2.DeviceId, NotifyType.StatusMessage);
                break;

            default:
                return(false);
            }
            return(true);
        }
        /// <summary>
        /// This method enables the connected scanner.
        /// </summary>
        /// <returns>a boolean based on whether it was able to enable the scanner.</returns>
        private async Task <bool> EnableBarcodeScannerAsync(BarcodeScannerInstance instance)
        {
            switch (instance)
            {
            case BarcodeScannerInstance.Instance1:
                await claimedBarcodeScannerInstance1.EnableAsync();

                UpdateOutput("Instance1 Enable Barcode Scanner succeeded.");
                break;

            case BarcodeScannerInstance.Instance2:
                await claimedBarcodeScannerInstance2.EnableAsync();

                UpdateOutput("Instance2 Enable Barcode Scanner succeeded.");
                break;

            default:
                return(false);
            }
            return(true);
        }
示例#6
0
        /// <summary>
        /// This method claims the connected scanner.
        /// </summary>
        /// <returns>a boolean based on whether it was able to claim the scanner.</returns>
        private async Task <bool> ClaimBarcodeScannerAsync(BarcodeScannerInstance instance)
        {
            bool bClaimAsyncStatus = false;

            //select the instance to claim
            switch (instance)
            {
            case BarcodeScannerInstance.Instance1:

                claimedBarcodeScannerInstance1 = await barcodeScannerInstance1.ClaimScannerAsync();

                if (claimedBarcodeScannerInstance1 == null)
                {
                    rootPage.NotifyUser("Instance 1 claim barcode scanner failed.", NotifyType.ErrorMessage);
                }
                else
                {
                    bClaimAsyncStatus = true;
                }
                break;

            case BarcodeScannerInstance.Instance2:

                claimedBarcodeScannerInstance2 = await barcodeScannerInstance2.ClaimScannerAsync();

                if (claimedBarcodeScannerInstance2 == null)
                {
                    rootPage.NotifyUser("Instance 2 claim barcode scanner failed.", NotifyType.ErrorMessage);
                }
                else
                {
                    bClaimAsyncStatus = true;
                }
                break;

            default:
                return(bClaimAsyncStatus);
            }
            return(bClaimAsyncStatus);
        }
示例#7
0
        /// <summary>
        /// Sets the UI elements to a state corresponding to the current active Instance.
        /// </summary>
        /// <param name="instance">Corresponds to the current active instance</param>
        private async void SetUI(BarcodeScannerInstance instance)
        {
            Instance1Border.BorderBrush = new SolidColorBrush(Colors.Gray);
            Instance2Border.BorderBrush = new SolidColorBrush(Colors.Gray);

            switch (instance)
            {
            case BarcodeScannerInstance.Instance1:
                await rootPage.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal,
                                                   () =>
                {
                    ScenarioStartScanningInstance1.IsEnabled = false;
                    ScenarioStartScanningInstance2.IsEnabled = true;
                    ScenarioEndScanningInstance1.IsEnabled   = true;
                    ScenarioEndScanningInstance2.IsEnabled   = false;
                    Instance1Border.BorderBrush = new SolidColorBrush(Colors.DarkBlue);
                }
                                                   );

                break;

            case BarcodeScannerInstance.Instance2:
                await rootPage.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal,
                                                   () =>
                {
                    ScenarioStartScanningInstance1.IsEnabled = true;
                    ScenarioStartScanningInstance2.IsEnabled = false;
                    ScenarioEndScanningInstance1.IsEnabled   = false;
                    ScenarioEndScanningInstance2.IsEnabled   = true;
                    Instance2Border.BorderBrush = new SolidColorBrush(Colors.DarkBlue);
                }
                                                   );

                break;

            default:
                break;
            }
        }
        /// <summary>
        /// Sets the UI elements to a state corresponding to the current active Instance.
        /// </summary>
        /// <param name="instance">Corresponds to the current active instance</param>
        private void SetUI(BarcodeScannerInstance instance)
        {
            Instance1Border.BorderBrush = new SolidColorBrush(Colors.Gray);
            Instance2Border.BorderBrush = new SolidColorBrush(Colors.Gray);

            switch (instance)
            {
            case BarcodeScannerInstance.Instance1:
                ScenarioStartScanningInstance1.IsEnabled = false;
                ScenarioStartScanningInstance2.IsEnabled = true;
                ScenarioEndScanningInstance1.IsEnabled   = true;
                ScenarioEndScanningInstance2.IsEnabled   = false;
                Instance1Border.BorderBrush = new SolidColorBrush(Colors.DarkBlue);
                break;

            case BarcodeScannerInstance.Instance2:
                ScenarioStartScanningInstance1.IsEnabled = true;
                ScenarioStartScanningInstance2.IsEnabled = false;
                ScenarioEndScanningInstance1.IsEnabled   = false;
                ScenarioEndScanningInstance2.IsEnabled   = true;
                Instance2Border.BorderBrush = new SolidColorBrush(Colors.DarkBlue);
                break;
            }
        }
        /// <summary>
        /// Sets the UI elements to a state corresponding to the current active Instance.
        /// </summary>
        /// <param name="instance">Corresponds to the current active instance</param>
        private async void SetUI(BarcodeScannerInstance instance)
        {
            Instance1Border.BorderBrush = new SolidColorBrush(Colors.Gray);
            Instance2Border.BorderBrush = new SolidColorBrush(Colors.Gray);

            switch (instance)
            {

                case BarcodeScannerInstance.Instance1:
                    await rootPage.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal,
                        () =>
                        {
                            ScenarioStartScanningInstance1.IsEnabled = false;
                            ScenarioStartScanningInstance2.IsEnabled = true;
                            ScenarioEndScanningInstance1.IsEnabled = true;
                            ScenarioEndScanningInstance2.IsEnabled = false;
                            Instance1Border.BorderBrush = new SolidColorBrush(Colors.DarkBlue);
                        }
                    );

                    break;

                case BarcodeScannerInstance.Instance2:
                    await rootPage.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal,
                    () =>
                    {
                        ScenarioStartScanningInstance1.IsEnabled = true;
                        ScenarioStartScanningInstance2.IsEnabled = false;
                        ScenarioEndScanningInstance1.IsEnabled = false;
                        ScenarioEndScanningInstance2.IsEnabled = true;
                        Instance2Border.BorderBrush = new SolidColorBrush(Colors.DarkBlue);
                    }
                );
                    break;

                default:
                    break;
            }
        }
 /// <summary>
 /// This method enables the connected scanner.
 /// </summary>
 /// <returns>a boolean based on whether it was able to enable the scanner.</returns>
 private async Task<bool> EnableBarcodeScannerAsync(BarcodeScannerInstance instance)
 {
     switch (instance)
     {
         case BarcodeScannerInstance.Instance1:
             await claimedBarcodeScannerInstance1.EnableAsync();
             rootPage.NotifyUser("Instance 1 ready to scan. Device ID: " + claimedBarcodeScannerInstance1.DeviceId, NotifyType.StatusMessage);
             break;
         case BarcodeScannerInstance.Instance2:
             await claimedBarcodeScannerInstance2.EnableAsync();
             rootPage.NotifyUser("Instance 2 ready to scan. Device ID: " + claimedBarcodeScannerInstance2.DeviceId, NotifyType.StatusMessage);
             break;
         default:
             return false;
     }
     return true;
 }
        /// <summary>
        /// This method claims the connected scanner.
        /// </summary>
        /// <returns>a boolean based on whether it was able to claim the scanner.</returns>
        private async Task<bool> ClaimBarcodeScannerAsync(BarcodeScannerInstance instance)
        {
            bool bClaimAsyncStatus = false;
            //select the instance to claim
            switch (instance)
            {
                case BarcodeScannerInstance.Instance1:

                    claimedBarcodeScannerInstance1 = await scannerInstance1.ClaimScannerAsync();
                    if (claimedBarcodeScannerInstance1 == null)
                        rootPage.NotifyUser("Instance 1 claim barcode scanner failed.", NotifyType.ErrorMessage);
                    else
                        bClaimAsyncStatus = true;
                    break;

                case BarcodeScannerInstance.Instance2:

                    claimedBarcodeScannerInstance2 = await scannerInstance2.ClaimScannerAsync();
                    if (claimedBarcodeScannerInstance2 == null)
                        rootPage.NotifyUser("Instance 2 claim barcode scanner failed.", NotifyType.ErrorMessage);
                    else
                        bClaimAsyncStatus = true;
                    break;

                default:
                    return bClaimAsyncStatus;
            }
            return bClaimAsyncStatus;
        }
        /// <summary>
        /// This method returns the first available Barcode Scanner. To enumerate and find a particular device use the device enumeration code.
        /// </summary>
        /// <returns>a boolean value based on whether it found a compatible scanner connected</returns>
        private async Task<bool> CreateDefaultScannerObjectAsync(BarcodeScannerInstance instance)
        {
            BarcodeScanner scanner = null;
            scanner = await BarcodeScanner.GetDefaultAsync();

            if (scanner == null)
            {
                rootPage.NotifyUser("Barcode scanner not found. Please connect a barcode scanner.", NotifyType.ErrorMessage);
                return false;
            }

            switch (instance)
            {
                case BarcodeScannerInstance.Instance1:
                    scannerInstance1 = scanner;
                    break;
                case BarcodeScannerInstance.Instance2:
                    scannerInstance2 = scanner;
                    break;
                default:
                    return false;
            }

            return true;
        }
 /// <summary>
 /// This method enables the connected scanner.
 /// </summary>
 /// <returns>a boolean based on whether it was able to enable the scanner.</returns>
 private async Task<bool> EnableBarcodeScannerAsync(BarcodeScannerInstance instance)
 {
     switch (instance)
     {
         case BarcodeScannerInstance.Instance1:
             await claimedBarcodeScannerInstance1.EnableAsync();
             UpdateOutput("Instance1 Enable Barcode Scanner succeeded.");
             break;
         case BarcodeScannerInstance.Instance2:
             await claimedBarcodeScannerInstance2.EnableAsync();
             UpdateOutput("Instance2 Enable Barcode Scanner succeeded.");
             break;
         default:
             return false;
     }
     return true;
 }
        /// <summary>
        /// This method claims the connected scanner.
        /// </summary>
        /// <returns>a boolean based on whether it was able to claim the scanner.</returns>
        private async Task<bool> ClaimBarcodeScannerAsync(BarcodeScannerInstance instance)
        {
            bool bClaimAsyncStatus = false;
            //select the instance to claim
            switch (instance)
            {
                case BarcodeScannerInstance.Instance1:

                    claimedBarcodeScannerInstance1 = await scannerInstance1.ClaimScannerAsync();
                    if (claimedBarcodeScannerInstance1 != null)
                    {
                        UpdateOutput("Instance1 Claim Barcode Scanner succeeded.");
                        bClaimAsyncStatus = true;
                    }
                    else
                    {
                        UpdateOutput("Instance1 Claim Barcode Scanner failed.");                     
                    }
                    break;

                case BarcodeScannerInstance.Instance2:

                    claimedBarcodeScannerInstance2 = await scannerInstance2.ClaimScannerAsync();
                    if (claimedBarcodeScannerInstance2 != null)
                    {
                        UpdateOutput("Instance2 Claim Barcode Scanner succeeded.");
                        bClaimAsyncStatus = true;
                    }
                    else
                    {
                        UpdateOutput("Instance2 Claim Barcode Scanner failed.");                                                
                    }
                    break;

                default:                    
                    return bClaimAsyncStatus;
            }
            return bClaimAsyncStatus;            
        }
        /// <summary>
        /// This method returns the first available Barcode Scanner. To enumerate and find a particular device use the device enumeration code.
        /// </summary>
        /// <returns>a boolean value based on whether it found a compatible scanner connected</returns>
        private async Task<bool> CreateDefaultScannerObjectAsync(BarcodeScannerInstance instance)
        {
            BarcodeScanner scanner = null;
            scanner = await BarcodeScanner.GetDefaultAsync();

            if (scanner == null)
            {
                UpdateOutput("Scanner not found. Please connect a Barcode Scanner.");
                return false;
            }
            
            switch (instance)
            {
                case BarcodeScannerInstance.Instance1:
                    scannerInstance1 = scanner;
                    UpdateOutput("Instance1 Default Barcode Scanner created.");
                    break;
                case BarcodeScannerInstance.Instance2:
                    scannerInstance2 = scanner;
                      UpdateOutput("Instance2 Default Barcode Scanner created.");
                    break;
                default:
                    return false;
            }
           
            return true;
        }