public MainWindow()
        {
            InitializeComponent();
            App.Current.SessionEnding += Current_SessionEnding;
            SerialStatus = "Waiting device ...";

            Config                   = Configuration.Configuration.Load();
            monitor                  = new SerialMonitor(Config.Port);
            monitor.OnReceived      += monitor_OnReceived;
            monitor.OnStatusChanged += Monitor_OnStatusChanged;

            HistoryScan          = new ObservableCollection <ScanItem>();
            MainGrid.DataContext = this;
        }
 private void MenuItem_Click_Options(object sender, RoutedEventArgs e)
 {
     Configuration.ConfigurationWindow window = new Configuration.ConfigurationWindow();
     monitor.Stop();
     if (window.ShowDialog() == true)
     {
         //Reload Configuration
         monitor                  = null;
         Config                   = Configuration.Configuration.Load();
         monitor                  = new SerialMonitor(Config.Port);
         monitor.OnReceived      += monitor_OnReceived;
         monitor.OnStatusChanged += Monitor_OnStatusChanged;
     }
     monitor.Start();
 }