// No comments here -- these are self-explanatory.

        private void configureToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SamplingConfig sc = new SamplingConfig(viewModel);

            ViewModel.ControllerTypes ct = viewModel.Settings.ControllerType;

            if (sc.ShowDialog(this) == System.Windows.Forms.DialogResult.OK)
            {
                viewModel.ConfigChanged = true;

                // If the controller type changed, close/re-open the controller.
                if (ct != viewModel.Settings.ControllerType)
                {
                    viewModel.Close();
                    viewModel.Open();
                }
            }

            sc.Dispose();
        }
        /// <summary>
        /// Form Load event handler.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void MainForm_Load(object sender, EventArgs e)
        {
            // Create our viewModel
            viewModel = new ViewModel();

            // Show the default settings.
            this.activeChannels.Text = Convert.ToString(viewModel.Settings.SamplingChannels);
            this.samplingRate.Text   = Convert.ToString(viewModel.Settings.SamplingRate);

            customLaDisplayControl1.SetSamplingRate(viewModel.Settings.SamplingRate);

            // Wire-up the mouse-over event so we can tell when to change the channel and time.
            customLaDisplayControl1.OnMouseOver += customLaDisplayControl1_OnMouseOver;

            // Wire-up the event handlers for status, progress, errors, and plots.
            viewModel.OnStatusMessage += viewModel_StatusMessage;
            viewModel.OnProgress      += viewModel_Progress;
            viewModel.OnPlot          += viewModel_Plot;
            viewModel.OnError         += viewModel_Error;

            // This will attempt to open the controller.
            viewModel.Open();
        }
        /// <summary>
        /// Form Load event handler.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void MainForm_Load(object sender, EventArgs e)
        {
            // Create our viewModel
            viewModel = new ViewModel();

            // Show the default settings.
            this.activeChannels.Text = Convert.ToString(viewModel.Settings.SamplingChannels);
            this.samplingRate.Text = Convert.ToString(viewModel.Settings.SamplingRate);

            customLaDisplayControl1.SetSamplingRate(viewModel.Settings.SamplingRate);

            // Wire-up the mouse-over event so we can tell when to change the channel and time.
            customLaDisplayControl1.OnMouseOver += customLaDisplayControl1_OnMouseOver;

            // Wire-up the event handlers for status, progress, errors, and plots.
            viewModel.OnStatusMessage += viewModel_StatusMessage;
            viewModel.OnProgress += viewModel_Progress;
            viewModel.OnPlot += viewModel_Plot;
            viewModel.OnError += viewModel_Error;

            // This will attempt to open the controller.
            viewModel.Open();
        }