public override void Finalise()
        {
            if (m_frmEnterWavelength != null)
            {
                try
                {
                    if (m_frmEnterWavelength.Visible)
                    {
                        m_frmEnterWavelength.Close();
                    }
                }
                catch
                { }

                try
                {
                    m_frmEnterWavelength.Dispose();
                }
                catch
                { }

                m_frmEnterWavelength = null;
            }

            base.Finalise();
        }
        private void EnsureEnterWavelengthForm()
        {
            if (m_frmEnterWavelength == null)
            {
                m_frmEnterWavelength = new frmEnterWavelength(this);
            }

            var parentForm = m_View.FindForm();

            if (parentForm != null)
            {
                if (!m_frmEnterWavelength.Visible)
                {
                    try
                    {
                        m_frmEnterWavelength.Show(m_View);
                    }
                    catch (ObjectDisposedException)
                    {
                        m_frmEnterWavelength = new frmEnterWavelength(this);
                        m_frmEnterWavelength.Show(m_View);
                    }

                    m_frmEnterWavelength.Top  = parentForm.Top;
                    m_frmEnterWavelength.Left = parentForm.Right;

                    parentForm.Focus();
                }
            }
        }
        public override void Finalise()
        {
            if (m_frmEnterWavelength != null)
            {
                try
                {
                    if (m_frmEnterWavelength.Visible)
                        m_frmEnterWavelength.Close();
                }
                catch
                { }

                try
                {
                    m_frmEnterWavelength.Dispose();
                }
                catch
                { }

                m_frmEnterWavelength = null;
            }

            base.Finalise();
        }
        private void EnsureEnterWavelengthForm()
        {
            if (m_frmEnterWavelength == null)
                m_frmEnterWavelength = new frmEnterWavelength(this);

            var parentForm = m_View.FindForm();
            if (parentForm != null)
            {
                if (!m_frmEnterWavelength.Visible)
                {
                    try
                    {
                        m_frmEnterWavelength.Show(m_View);
                    }
                    catch (ObjectDisposedException)
                    {
                        m_frmEnterWavelength = new frmEnterWavelength(this);
                        m_frmEnterWavelength.Show(m_View);
                    }

                    m_frmEnterWavelength.Top = parentForm.Top;
                    m_frmEnterWavelength.Left = parentForm.Right;

                    parentForm.Focus();
                }
            }
        }