using System; using System.Collections.Generic; using System.Text; using System.Drawing.Design; using System.ComponentModel; using System.Windows.Forms.Design; using HotelPms.Share.Windows.Component.PropertyDialog; using System.Windows.Forms; namespace HotelPms.Share.Windows.Component.PropertyEditor { public class InputTypeEditor : UITypeEditor { public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context) { if (context != null && context.Instance != null) { return UITypeEditorEditStyle.Modal; } return base.GetEditStyle(context); } public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { IWindowsFormsEditorService editorService = null; if (context != null && context.Instance != null && provider != null) { editorService = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService)); if (editorService != null) { CTextBox control = (CTextBox)context.Instance; using (FormInputType dlg = new FormInputType(control.InputType)) { if (dlg.ShowDialog() == DialogResult.OK) { value = dlg.InputType; return value; } } } } return value; } } }