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); }