public override object EditValue(ITypeDescriptorContext context, System.IServiceProvider provider, object value)
        {
            IWindowsFormsEditorService svc = provider.GetService(typeof(IWindowsFormsEditorService)) as IWindowsFormsEditorService;

            NavMeshGenerationSettings config = value as NavMeshGenerationSettings;

            using (NavMeshGenerationSettingsForm form = new NavMeshGenerationSettingsForm())
            {
                form.NavSetting = config;
                if (svc.ShowDialog(form) == DialogResult.OK)
                {
                    config = form.NavSetting;                     // update object
                }
            }

            return(value);            // can also replace the wrapper object here
        }
        public override object EditValue(ITypeDescriptorContext context, System.IServiceProvider provider, object value)
        {
            IWindowsFormsEditorService svc = provider.GetService(typeof(IWindowsFormsEditorService)) as IWindowsFormsEditorService;

            NavMeshGenerationSettings config = value as NavMeshGenerationSettings;

            using (NavMeshGenerationSettingsForm form = new NavMeshGenerationSettingsForm())
            {
                form.NavSetting = config;
                if (svc.ShowDialog(form) == DialogResult.OK)
                {
                    config = form.NavSetting; // update object
                }
            }

            return value; // can also replace the wrapper object here
        }