public override IWindow CreateWindowImpl(string name, object[] parameters) { BuildParameter[] buildParameters = null; if (parameters != null) { buildParameters = new BuildParameter[parameters.Length]; for (int i = 0; i < parameters.Length; i++) { buildParameters[i] = new SimpleBuildPrameter(parameters[i]); } } Window window = _windows.First(win => win.Metadata.Name == name).Resolve(true, buildParameters); UiSynchronize.Synchronize.Invoke(() => window.Name = name); return new WpfWindow(window); }
/// <summary> /// The build up. /// </summary> /// <param name="type"> /// The type. /// </param> /// <param name="constructorArguments"> /// The constructor arguments. /// </param> /// <returns> /// The <see cref="object" />. /// </returns> public object BuildUp(Type type, ErrorTracer errorTracer, BuildParameter[] buildParameters, params object[] constructorArguments) { try { return _buildEngine.BuildUp(type, constructorArguments, errorTracer, buildParameters); } catch (Exception e) { if (e is BuildUpException) throw; errorTracer.Exception = e; throw new BuildUpException(errorTracer); //throw new BuildUpException(string.Format("Type Build Error: {0}", type), e); } }
/// <summary> /// The build up. /// </summary> /// <param name="type"> /// The type. /// </param> /// <param name="constructorArguments"> /// The constructor arguments. /// </param> /// <returns> /// The <see cref="object" />. /// </returns> /// <exception cref="NotImplementedException"> /// </exception> public object BuildUp(Type type, ErrorTracer errorTracer, BuildParameter[] buildParameters, params object[] constructorArguments) { Contract.Requires<ArgumentNullException>(type != null, "type"); Contract.Requires<ArgumentNullException>(errorTracer != null, "errorTracer"); throw new NotImplementedException(); }