public MainForm() { InitializeComponent(); var heuristics = ReflectiveEnumerator.GetOfType <Heuristic>(); foreach (var heuristic in heuristics) { ComboHeuristic.Items.Add(heuristic); } ComboHeuristic.SelectedIndex = 0; ListNextStep.DataSource = null; ListNextStep.DataSource = StepInfo.GetSteps(); _semaphore = new Semaphore(0, 1, "Steps"); }