private DesignerPropertyEditor createEditor(string valueType) { if (flowLayoutPanel.Controls.Count > 1) { flowLayoutPanel.Controls.RemoveAt(1); } Type editorType = getEditorType(valueType); if (editorType == null) { return(null); } DesignerPropertyEditor editor = (DesignerPropertyEditor)editorType.InvokeMember(string.Empty, BindingFlags.CreateInstance, null, null, new object[0]); editor.Location = new System.Drawing.Point(74, 1); editor.Margin = new System.Windows.Forms.Padding(0); editor.Size = new System.Drawing.Size(flowLayoutPanel.Width - this.typeComboBox.Width - 5, 20); editor.TabIndex = 1; editor.ValueType = this._param.Attribute.ValueType; if (this._param != null && this._param.IsArrayIndex) { editor.ValueType = ValueTypes.Int; } setEditor(editor, valueType); if (this._bIsReadonly) { editor.ReadOnly(); } flowLayoutPanel.Controls.Add(editor); return(editor); }