ByteScout BarCode Generator SDK - C# - WPF barcode Control for Web Demo - ByteScout
Announcement
Our ByteScout SDK products are sunsetting as we focus on expanding new solutions.
Learn More Open modal
Close modal
Announcement Important Update
ByteScout SDK Sunsetting Notice
Our ByteScout SDK products are sunsetting as we focus on our new & improved solutions. Thank you for being part of our journey, and we look forward to supporting you in this next chapter!

ByteScout BarCode Generator SDK – C# – WPF barcode Control for Web Demo

  • Home
  • /
  • Articles
  • /
  • ByteScout BarCode Generator SDK – C# – WPF barcode Control for Web Demo

ByteScout BarCode Generator SDK – C# – WPF barcode Control for Web Demo

App.xaml.cs

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Windows;
using System.Windows.Navigation;

namespace Bytescout.BarCode.WebDemo
{
    /// <summary>
    /// Interaction logic for App.xaml
    /// </summary>
    public partial class App : Application
    {
    }
}

MainPage.xaml.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using Bytescout.BarCode.WPF;
using Bytescout.BarCode;

namespace Bytescout.BarCode.WebDemo
{
///

/// Interaction logic for MainPage.xaml
///

public partial class MainPage : Page
{
#region Constants

private const int BarHeight = 50;
private const int PdfBarHeight = 6;

#endregion

#region Constructor
///

/// Initializes a new instance of the class.
///

public MainPage()
{
InitializeComponent();
}
#endregion

#region Controls event handlers
///

/// Handles the SelectionChanged event of the cmbSymbologyType control.
///

/// The source of the event. /// The instance containing the event data. private void cmbSymbologyType_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
UpdateBarcode();
}

///

/// Handles the Click event of the btnGenerate control.
///

/// The source of the event. /// The instance containing the event data. private void btnGenerate_Click(object sender, RoutedEventArgs e)
{
UpdateBarcode();
}

///

/// Handles the Click event of the btnSaveToFile control.
///

/// The source of the event. /// The instance containing the event data. private void btnSaveToFile_Click(object sender, RoutedEventArgs e)
{
SaveToFile();
}

///

/// Handles the Checked event of the chkDrawCaptionFor2D control.
///

/// The source of the event. /// The instance containing the event data. private void chkDrawCaptionFor2D_Checked(object sender, RoutedEventArgs e)
{
ctrlBarcodeControl.DrawCaptionFor2DBarcodes = chkDrawCaptionFor2D.IsChecked.Value;
}

///

/// Handles the Checked event of the chkAutoFitToContainer control.
///

/// The source of the event. /// The instance containing the event data. private void chkAutoFitToContainer_Checked(object sender, RoutedEventArgs e)
{
ctrlBarcodeControl.AutoFitToControlSize = chkAutoFitToContainer.IsChecked.Value;
}

///

/// Handles the Checked event of the chkCutUnusedSpace control.
///

/// The source of the event. /// The instance containing the event data. private void chkCutUnusedSpace_Checked(object sender, RoutedEventArgs e)
{

}

///

/// Handles the TextChanged event of the txtValueToEncode control.
///

/// The source of the event. /// The instance containing the event data. private void txtValueToEncode_TextChanged(object sender, TextChangedEventArgs e)
{
UpdateBarcode();
}

///

/// Handles the TextChanged event of the txtSupplementalValue control.
///

/// The source of the event. /// The instance containing the event data. private void txtSupplementalValue_TextChanged(object sender, TextChangedEventArgs e)
{
UpdateBarcode();
}
#endregion

#region Private implementation

public object[] GetObjectsFromEnum()
{
object[] objArray = new object[Enum.GetValues(typeof(SymbologyType)).Length];
for (int i = 0; i < objArray.Length; i++) { objArray[i] = ((SymbologyType)Enum.GetValues(typeof(SymbologyType)).GetValue(i)).ToString(); } return objArray; } private void UpdateBarcode() { SymbologyType symbology = (SymbologyType)Enum.GetValues(typeof(SymbologyType)).GetValue(this.cboSymbologyType.SelectedIndex); txtSymbologyDescription.Text = ctrlBarcodeControl.GetValueRestrictions(symbology); try { if (symbology == SymbologyType.EAN13 || symbology == SymbologyType.ISBN || symbology == SymbologyType.UPCA) { txtSupplementalValue.IsEnabled = true; lblSupplementalValue.IsEnabled = true; txtSymbologyDescription.Text += " " + ctrlBarcodeControl.GetSupplementaryValueRestrictions(); } else { txtSupplementalValue.IsEnabled = false; lblSupplementalValue.IsEnabled = false; } lblErrorMessage.Content = ""; ctrlBarcodeControl.RegistrationKey = "XXXXXXXXXXXXXXXXXXx"; ctrlBarcodeControl.RegistrationName = "YYYYYYYYYYYYYYYYYYYY"; ctrlBarcodeControl.Symbology = symbology; ctrlBarcodeControl.SupplementValue = txtSupplementalValue.Text; ctrlBarcodeControl.Value = txtValueToEncode.Text; ctrlBarcodeControl.DrawCaptionFor2DBarcodes = chkDrawCaptionFor2D.IsChecked.Value; ctrlBarcodeControl.AutoFitToControlSize = chkAutoFitToContainer.IsChecked.Value; ctrlBarcodeControl.Caption = ""; if (symbology == SymbologyType.PDF417 || symbology == SymbologyType.PDF417Truncated || symbology == SymbologyType.MacroPDF417 || symbology == SymbologyType.DataMatrix || symbology == SymbologyType.GS1_DataMatrix) { ctrlBarcodeControl.BarHeight = PdfBarHeight; } else if (symbology == SymbologyType.MicroPDF417) { ctrlBarcodeControl.BarHeight = PdfBarHeight / 2; } else { ctrlBarcodeControl.BarHeight = BarHeight; } } catch (Exception) { lblErrorMessage.Content = "Value is invalid for current symbology. Please review value restrictions above."; } } private void SaveToFile() { Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog(); dlg.Filter = "PNG Image|*.png|TIFF Image|*.tif;*.tiff|JPEG image|*.jpg;*.jpeg|Bitmap Image|*.bmp|GIF Image|*.gif"; dlg.ValidateNames = true; dlg.FilterIndex = 1; dlg.OverwritePrompt = true; dlg.CheckPathExists = true; dlg.AddExtension = true; bool? result = dlg.ShowDialog(Application.Current.MainWindow); if (result.HasValue && result.Value) { try { if (System.IO.Path.GetExtension(dlg.FileName).ToLowerInvariant() == ".emf") throw new BarcodeException("Saving as EMF is disabled.\nYou should buy Barcode SDK for this."); if (chkCutUnusedSpace.IsChecked.Value) { bool cut = ctrlBarcodeControl.CutUnusedSpace; ctrlBarcodeControl.CutUnusedSpace = true; ctrlBarcodeControl.SaveImage(dlg.FileName); ctrlBarcodeControl.CutUnusedSpace = cut; } else { ctrlBarcodeControl.SaveImage(dlg.FileName); } } catch (System.Exception e) { MessageBox.Show(e.Message); } } } #endregion #region Main window event handlers private void Page_Loaded(object sender, RoutedEventArgs e) { foreach (object o in GetObjectsFromEnum()) { this.cboSymbologyType.Items.Add(o); } this.cboSymbologyType.SelectedIndex = 0; } #endregion } } [/csharp]


  Click here to get your Free Trial version of the SDK

Tutorials:

prev
next