Add NOV Barcode control in WPF at runtime
To get started and host NOV in your WPF application, take a look at:
Getting Started with NOV in WPF using only code
The following topic shows how to add a NOV Barcode Widget (control) in WPF at runtime.
1. Reference the NOV Assemblies
Ensure that your application references the following NOV dlls:
Nevron.Nov.Presentation.dll - core NOV portable assembly;
Nevron.Nov.Host.WinBase.dll - base assembly for Windows presentation hosts (WinForm and WPF);
Nevron.Nov.Host.Wpf.dll - presentation host for WPF;
Nevron.Nov.Barcode.dll - assembly for the NBarcodeModule;
These assemblies are located in NOV installation folder: C:\Program Files (x86)\Nevron Software\Nevron Open Vision VERSION\Bin\Win
2. When initializing the NOV Application, make sure to create the Barcode module
Open the Program.cs file and use the following code:
using
Nevron.Nov;
using
Nevron.Nov.Windows;
using
Nevron.Nov.Barcode;
using
System;
namespace
WpfApplication1
{
static
class
Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static
void
Main()
{
// create the application
App app =
new
App();
// Apply license for redistribution here. You can skip this code when evaluating NOV.
NLicenseManager.Instance.SetLicense(
new
NLicense(
"LICENSE KEY"
));
NModule[] modules =
new
NModule[] {
// TODO: Create modules here
NBarcodeModule.Instance
};
// install Nevron Open Vision for WPF
NNovApplicationInstaller.Install(modules);
// run the application main window
app.Run(
new
MainWindow());
}
}
}
3. Create a Linear and Matrix (QR) Barcodes
Open the MainWindow.xaml.cs file and use the following code to create the Barcode:
using
Nevron.Nov.Windows;
using
Nevron.Nov.Barcode;
using
System.Windows;
using
System;
using
Nevron.Nov.UI;
using
Nevron.Nov.Layout;
namespace
WpfApplication1
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public
partial
class
MainWindow : Window
{
public
MainWindow()
{
InitializeComponent();
// Set window size
this
.Width = 620;
this
.Height = 300;
// create a stack panel
NStackPanel stackPanel =
new
NStackPanel();
stackPanel.Margins =
new
Nevron.Nov.Graphics.NMargins(5);
stackPanel.HorizontalPlacement = ENHorizontalPlacement.Left;
stackPanel.VerticalPlacement = ENVerticalPlacement.Top;
stackPanel.HorizontalSpacing = 5;
stackPanel.VerticalSpacing = 5;
// create linear barcode
NLinearBarcode barcode =
new
NLinearBarcode();
barcode.HorizontalPlacement = ENHorizontalPlacement.Center;
barcode.VerticalPlacement = ENVerticalPlacement.Center;
barcode.Text =
"Nevron software"
;
barcode.PreferredHeight = 100;
barcode.Symbology = ENLinearBarcodeSymbology.Code128;
stackPanel.Add(barcode);
// create matrix barcode
NMatrixBarcode qrCode =
new
NMatrixBarcode();
qrCode.Symbology = ENMatrixBarcodeSymbology.QrCode;
stackPanel.Add(qrCode);
// create NOV host
NNovWidgetHost<NStackPanel> host =
new
NNovWidgetHost<NStackPanel>(stackPanel);
Content = host;
}
}
}
Run the application - it should display a simple window with a Linear and Matrix (QR) Barcodes.
Using Visual Basic .NET (VB.NET)
When you create a Visual Basic WPF Application, reference the NOV Assemblies and use the following code in your MainWindow.xaml.vb:
Imports
Nevron.Nov.Barcode
Imports
Nevron.Nov.UI
Imports
Nevron.Nov.Layout
Imports
Nevron.Nov.Windows
Imports
Nevron.Nov
Partial
Public
Class
MainWindow
Inherits
Window
Public
Sub
New
()
InitializeComponent()
' clear all controls from the form
' TODO: Apply license for redistribution here. You can skip this code when evaluating NOV.
NLicenseManager.Instance.SetLicense(
New
NLicense(
"LICENSE KEY"
))
' Install Nevron Open Vision modules
Dim
modules()
As
NModule = {NBarcodeModule.Instance}
NNovApplicationInstaller.Install(modules)
' Set window size
Me
.Width = 620
Me
.Height = 300
' create a stack panel
Dim
stackPanel
As
New
NStackPanel()
stackPanel.Margins =
New
Nevron.Nov.Graphics.NMargins(5)
stackPanel.HorizontalPlacement = ENHorizontalPlacement.Left
stackPanel.VerticalPlacement = ENVerticalPlacement.Top
stackPanel.HorizontalSpacing = 5
stackPanel.VerticalSpacing = 5
' create linear barcode
Dim
barcode
As
New
NLinearBarcode()
barcode.HorizontalPlacement = ENHorizontalPlacement.Center
barcode.VerticalPlacement = ENVerticalPlacement.Center
barcode.Text =
"Nevron software"
barcode.PreferredHeight = 100
barcode.Symbology = ENLinearBarcodeSymbology.Code128
stackPanel.Add(barcode)
' create matrix barcode
Dim
qrCode
As
New
NMatrixBarcode()
qrCode.Symbology = ENMatrixBarcodeSymbology.QrCode
stackPanel.Add(qrCode)
' create the host widget
Content =
New
NNovWidgetHost(Of NStackPanel)(stackPanel)
End
Sub
End
Class
For more information about the NOV Barcode component, take a look at the Help Documentation:
Barcodes > Barcodes Overview
Article ID: 265, Created On: 8/19/2016, Modified: 9/27/2016