public Main() { InitializeComponent(); CreatePlayground(); Load += (s, e) => { _context = new GraphicContext(); _context.Reset(_bitmap); _projectors.AddRange(AssemblyExtensions.FindAllImplementationsAndActivate <IProjectorEngine>()); _projectors.InitializeAll(_context); _extensions.AddRange(AssemblyExtensions.FindAllImplementationsAndActivate <IGraphicExtension>()); _projectors.Use <PerspectiveProjectorEngine>(); BindExtensionControls(); InitModelAndFrameTick(); }; playground.MouseWheel += CG_MouseWheel; playground.KeyPress += Main_KeyPress; playground.Paint += (s, e) => e.Graphics.DrawImage(_bitmap, 0, 0); _testOutputBuilder = new StringBuilder(); _testOutputWriter = new StringWriter(_testOutputBuilder); }