private void buttonOK_Click(object sender, EventArgs e)
 {
     if (_type != null && _type.IsEnum)
     {
         DataEditorLookupEnum de = this.SelectedEditor as DataEditorLookupEnum;
         if (de == null)
         {
             de = new DataEditorLookupEnum();
             this.SetSelection(de);
         }
         de.SetType(_type);
         this.DialogResult = DialogResult.OK;
     }
 }
        public DlgFieldEditorEnum(DataEditor current)
            : base(current)
        {
            InitializeComponent();
            DataEditorLookupEnum de = current as DataEditorLookupEnum;

            if (de != null)
            {
                _type = de.EnumType;
                if (_type != null && _type.IsEnum)
                {
                    labelEnum.Text = _type.AssemblyQualifiedName;
                    listBox1.Items.Clear();
                    string[] names = Enum.GetNames(_type);
                    if (names != null && names.Length > 0)
                    {
                        for (int i = 0; i < names.Length; i++)
                        {
                            listBox1.Items.Add(names[i]);
                        }
                    }
                }
            }
        }
        protected override void OnClone(DataEditor cloned)
        {
            DataEditorLookupEnum obj = cloned as DataEditorLookupEnum;

            obj._enumType = _enumType;
        }