/// <summary> /// Edits the specified object's value using the editor style indicated by the GetEditStyle method. /// </summary> /// <param name="context">An ITypeDescriptorContext that can be used to gain additional context information.</param> /// <param name="provider">An IServiceProvider that this editor can use to obtain services.</param> /// <param name="value">The object to edit.</param> /// <returns>The new value of the object.</returns> public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { if ((context != null) && (provider != null) && (value != null)) { // Grab the service needed to show the drop down IWindowsFormsEditorService service = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService)); if (service != null) { // Create the custom control used to edit value PaletteDrawBordersSelector selector = new PaletteDrawBordersSelector { // Populate selector with starting value Value = (PaletteDrawBorders)value }; // Show as a drop down control service.DropDownControl(selector); // Return the updated value return(selector.Value); } } return(base.EditValue(context, provider, value)); }
/// <summary> /// Edits the specified object's value using the editor style indicated by the GetEditStyle method. /// </summary> /// <param name="context">An ITypeDescriptorContext that can be used to gain additional context information.</param> /// <param name="provider">An IServiceProvider that this editor can use to obtain services.</param> /// <param name="value">The object to edit.</param> /// <returns>The new value of the object.</returns> public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { if ((context != null) && (provider != null) && (value != null)) { // Grab the service needed to show the drop down IWindowsFormsEditorService service = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService)); if (service != null) { // Create the custom control used to edit value PaletteDrawBordersSelector selector = new PaletteDrawBordersSelector(); // Populate selector with starting value selector.Value = (PaletteDrawBorders)value; // Show as a drop down control service.DropDownControl(selector); // Return the updated value return selector.Value; } } return base.EditValue(context, provider, value); }