Create a no Form Wizard for children template, use static properties to take value from Main Wizard.
using System;
using System.Collections.Generic;
using Microsoft.VisualStudio.TemplateWizard;
using System.Windows.Forms;
using EnvDTE;

namespace CustomWizard
    public class NewWidgetTemplateWizard : IWizard
        private UserInputForm _inputForm;
        private string _projectName;
        private int _portNumber;
        private string _releaseSchema;
        private Guid _projectGuid;
        #region Implementation of IWizard

        public void RunStarted(object automationObject, Dictionary<string, string> replacementsDictionary, WizardRunKind runKind, object[] customParams)

                    _inputForm = new UserInputForm();
                    _projectName = _inputForm.ProjectName;
                    _portNumber = _inputForm.PortNumber;
                    _releaseSchema = _inputForm.ReleaseSchema;
                    _projectGuid = Guid.NewGuid();

                        _projectName );

            catch (Exception ex)

        private void SetUpChild()
            NewWidgetTemplateWizardChild.PortNumber = this._portNumber;
            NewWidgetTemplateWizardChild.ProjectName = this._projectName;
            NewWidgetTemplateWizardChild.ReleaseSchema = this._releaseSchema;
            NewWidgetTemplateWizardChild.ProjectGuid = this._projectGuid;
Supper simple solution..