public static void Initialize(IDesignerHost service, LayoutPanelDesigner layoutPanelDesigner) { if (service.GetService <MoreDesignerServices>() == null) { service.AddService(typeof(MoreDesignerServices), new MoreDesignerServices()); service.AddService(typeof(IDebugOutputPane), (container, type) => new DebugOutputPane(container)); service.SubstituteService <ITypeDescriptorFilterService>((container, originalService) => new ExtendedTypeDescriptorFilterService(originalService)); } var compositionContainer = new CompositionContainer(); compositionContainer.ComposeExportedValue(service.GetService <IDesignerHost>()); compositionContainer.ComposeExportedValue(service.GetService <BehaviorService>()); compositionContainer.ComposeExportedValue(service.GetService <ISelectionService>()); compositionContainer.ComposeExportedValue(service.GetService <IComponentChangeService>()); compositionContainer.ComposeExportedValue(service.GetService <IDebugOutputPane>()); compositionContainer.SatisfyImportsOnce(layoutPanelDesigner); }