public WaveformUserControl()
        {
            InitializeComponent();
            core            = new WaveformCore(this);
            dragDropManager = new ListViewDragDropManager(core, ListViewMain);
            dragDropManager.UpdateViewEvent += new UpdateView(dragDropManager_UpdateViewEvent);
            core.ScaleManager            = new ScaleManager(core, timeScaleViewer);
            timeScaleViewer.ScaleManager = core.ScaleManager;
            timeScaleViewer.ScaleManager.PropertyChanged += new PropertyChangedEventHandler(ScaleManager_PropertyChanged);
            cursorViewer = new CursorViewer(this, core);
            cursorViewer.CursorPositionChangedEvent += new UpdateView(cursorViewer_CursorPositionChangedEvent);
            TreeListView.AllowMultiSelection(ListViewMain);
            core.CursorViewer         = cursorViewer;
            actionMode                = WaveformActionMode.Cursor;
            TimeMeasureDataView1.Core = core;
            lines = new List <Line>();;
            core.TimeMeasureList.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(TimeMeasureList_CollectionChanged);

            runEvent = new RunDelegate(CustomRunCommandHandler);
        }