public Shell() { InitializeComponent(); AppDomain.CurrentDomain.AssemblyResolve += this.OnAssemblyResolve; container = new ConfigurationContainer(GetProfile(App.CommandLineParameters.ProfileFileName)); container.RegisterInstance <IUIServiceWpf>(this); container.RegisterInstance <IWindowsFormsEditorService>(this); container.RegisterInstance <IUIService>(this); container.RegisterInstance <IAssemblyDiscoveryService>(new LoadedAssembliesDiscoveryService()); container.DiscoverSubstituteTypesFromAssemblies(); applicationModel = container.Resolve <IApplicationModel>(); DataContext = applicationModel; applicationModel.New(); applicationModel.OnCloseAction = () => RequestClose(); InputBindings.Add(new InputBinding(applicationModel.NewConfigurationCommand, new KeyGesture(Key.N, ModifierKeys.Control))); InputBindings.Add(new InputBinding(applicationModel.SaveConfigurationCommand, new KeyGesture(Key.S, ModifierKeys.Control))); InputBindings.Add(new InputBinding(applicationModel.SaveAsConfigurationCommand, new KeyGesture(Key.A, ModifierKeys.Control))); InputBindings.Add(new InputBinding(applicationModel.OpenConfigurationCommand, new KeyGesture(Key.O, ModifierKeys.Control))); }
/// <summary> /// Initializes a new instance of <see cref="SingleHierarchyConfigurationUIHostAdapter"/>. /// </summary> /// <param name="hostConfiguration">The <see cref="HostAdapterConfiguration"/> that contains information on which assemblies to load into the designer.</param> /// <param name="serviceProvider">An <see cref="IServiceProvider"/> used to obtain services.</param> public SingleHierarchyConfigurationUIHostAdapter(HostAdapterConfiguration hostConfiguration, IServiceProvider serviceProvider) { this.serviceProvider = serviceProvider; editorUI = new ConfigurationEditorUI(); elementHost = new ElementHost { Child = editorUI, Dock = DockStyle.Fill }; editorControl = new UserControl() { Dock = DockStyle.Fill }; editorControl.Controls.Add(elementHost); container = new ConfigurationContainer(serviceProvider); container.RegisterInstance(new AssemblyLocator(hostConfiguration.PluginDirectory)); container.RegisterInstance <IWindowsFormsEditorService>(this); container.RegisterInstance <IUIServiceWpf>(this); container.RegisterInstance <IUIService>(this); container.RegisterInstance <IAssemblyDiscoveryService>(this); container.DiscoverSubstituteTypesFromAssemblies(); elementHost.Resize += ElementHostResize; applicationModel = container.Resolve <IApplicationModel>(); editorUI.DataContext = applicationModel; validationModel = applicationModel.ValidationModel; applicationModel.SelectedElementChanged += SelectedElementChanged; validationErrorsChanged = validationModel.ValidationResults as INotifyCollectionChanged; if (validationErrorsChanged != null) { validationErrorsChanged.CollectionChanged += ValidationErrorsCollectionChanged; } }
public void CanRegisterAndGetInstance() { const string friendlyInstance = "hej med dig min ven"; _container.RegisterInstance(friendlyInstance); var instance = _container.CreateContext().Get <string>(); Assert.That(instance, Is.EqualTo(friendlyInstance)); }