public FieldSetControl()
 {
     state = FieldSetControlState.Empty;
     yPos  = 0;
     InitializeComponent();
     timer               = new Timer();
     timer.Tick         += timer_Tick;
     timer.Interval      = 100;
     this.DoubleBuffered = true;
 }
        public async void Initialise(string filename)
        {
            state = FieldSetControlState.Loading;
            timer.Start();
            data = new FieldSetData();
            await data.Initialise(filename);

            timer.Stop();
            records = data.GetValidRecords;
            records.Sort();

            Height = records.Count * 50 + 400;
            state  = FieldSetControlState.Full;
            this.Invalidate();
        }