/// <summary>
        /// The edit.
        /// </summary>
        /// <param name="parentWindow">
        /// The parent window.
        /// </param>
        /// <param name="variables">
        /// The variables.
        /// </param>
        /// <param name="connections">
        /// The connections.
        /// </param>
        /// <returns>
        /// The <see cref="bool"/>.
        /// </returns>
        public bool Edit(IWin32Window parentWindow, Variables variables, Connections connections)
        {
            string jsonString = string.Empty;
            var value = this.metaData.CustomPropertyCollection["Settings"].Value;

            if (value != null)
            {
                jsonString = value.ToString();
            }

            List<InputColumnInfo> inputColumnInfos = new List<InputColumnInfo>();
            foreach (IDTSInputColumn100  col in this.metaData.InputCollection[0].InputColumnCollection)
            {
                inputColumnInfos.Add(
                    new InputColumnInfo() { ColumnName = col.Name, DataType = col.DataType, LineageId = col.LineageID });
            }

            FillablePdfDestinationUIForm editor = new FillablePdfDestinationUIForm(
                jsonString,
                inputColumnInfos.ToArray());

            editor.ShowDialog(parentWindow);

            if (editor.DialogResult == DialogResult.OK || editor.DialogResult == DialogResult.Yes)
            {
                this.metaData.CustomPropertyCollection["Settings"].Value = editor.OutputConfigJsonString;
                return true;
            }

            return false;
        }
        public void TestMethod1()
        {
            List<InputColumnInfo> inputColumnInfos = new List<InputColumnInfo>();

            inputColumnInfos.Add(new InputColumnInfo("Boolspalte", DataType.DT_BOOL, 13, "ID: Boolspalte"));
            inputColumnInfos.Add(new InputColumnInfo("Stringspalte", DataType.DT_STR, 13, "ID: Stringspalte"));
            inputColumnInfos.Add(new InputColumnInfo("Datumspalte", DataType.DT_DATE, 13, "ID: Datumspalte"));
            inputColumnInfos.Add(new InputColumnInfo("Intspalte", DataType.DT_I4, 13, "ID: Intspalte"));
            inputColumnInfos.Add(new InputColumnInfo("Floatspalte", DataType.DT_DECIMAL, 13, "ID: Floatspalte"));

            ComponentConfiguration config = new ComponentConfiguration();
            config.FieldDataSets = new List<ComponentConfiguration.FieldDataSet>();

            config.FieldDataSets.Add(new ComponentConfiguration.FieldDataSet("Feld 1", 3, "Combobox", "ID: Spalte 1", "Boolspalte"));
            config.FieldDataSets.Add(new ComponentConfiguration.FieldDataSet("Feld 2", 4, "Combobox", "ID: Spalte 2", "Stringspalte"));
            config.FieldDataSets.Add(new ComponentConfiguration.FieldDataSet("Feld 3", 4, "Combobox", "ID: Spalte 3", "Datumspalte"));
            config.FieldDataSets.Add(new ComponentConfiguration.FieldDataSet("Feld 4", 2, "Combobox", "ID: Spalte 4", "Intspalte"));
            config.FieldDataSets.Add(new ComponentConfiguration.FieldDataSet("Feld 5", 1, "Combobox", "ID: Spalte 5", "Floatspalte"));

            string configString = config.ToJsonString();

            MessageBox.Show(configString);

            FillablePdfDestinationUIForm editor = new FillablePdfDestinationUIForm(configString, inputColumnInfos.ToArray());
            editor.ShowDialog();
            MessageBox.Show(editor.DialogResult.ToString());
            MessageBox.Show(editor.OutputConfigJsonString);

            while (editor.DialogResult == DialogResult.OK | editor.DialogResult == DialogResult.Yes)
            {
                editor = new FillablePdfDestinationUIForm(editor.OutputConfigJsonString, inputColumnInfos.ToArray());
                editor.ShowDialog();
            }

              /*  NameBuilderForm form = new NameBuilderForm(inputColumnInfos, config);
            form.ShowDialog();*/
        }