public GraphDisplay()
        {
            InitializeComponent();
            this.Dock = DockStyle.Fill;
            this.Name = "Base Plugin Graph";

            _graph      = new HHOxyPlot();
            _graph.Dock = DockStyle.Fill;
            Controls.Add(_graph);

            _graph.XAxis.PositionAtZeroCrossing = true;

            _graph.ChartTitle = "HH Timing Basic Graph";     //change the chart title
            _graph.XAxisTitle = "Lap #";                     //change x axis label
            _graph.YAxisTitle = "Gap to reference lap time"; //change y axis label

            _legendController = new HHOxyPlotLegendController(_graph.PlotModel);
            _legendController.RefreshChart += HandleRefreshChart;

            _axisLimitsController = new HHOxyPlotAxisLimitsController(_graph);
            _axisLimitsController.RefreshChart += HandleRefreshChart;

            _carManager = new UICarManager <BasicGraphCar>(Color.Black, _cars, (x) =>
            {
                return(new BasicGraphCar(x.ItemID, x.CarColor, x.CategoryString, x.TyreManufacturer));
            });  //the car manager is in charge of adding items to _cars list

            //Add data binding to handle the reference car
            tb_referenceCar.DataBindings.Add("Text", this, nameof(ReferenceCar), true, DataSourceUpdateMode.OnPropertyChanged);
        }
        public ScoreboardControl()
        {
            myList         = new AdvBindingList <ScoreboardDataContainer>(new DefaultScoreboardSorter(ListSortDirection.Ascending), nameof(ScoreboardDataContainer.Position), new ScoreboardDataContainer("", Color.White, ""));
            myUICarManager = new UICarManager <ScoreboardDataContainer>(Color.White, myList, (x) => new ScoreboardDataContainer(x.ItemID, x.CarColor, x.CategoryString));
            myDGV          = new ScoreboardDGV <ScoreboardDataContainer>(myList, "\\g", (x) => myUICarManager.GetCategoryColour(x), true, false, false);

            base.SetListAndDGV(myList, myDGV);
            base.SetAppearanceOptions();
            base.InitializeFiltering();
        }