public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
        {
            if (context == null || context.Instance == null || provider == null)
            {
                return(value);
            }

            var editorService = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService));

            ReferencedFileSave rfs = ((ReferencedFileSavePropertyGridDisplayer)context.Instance).Instance as ReferencedFileSave;

#if DEBUG
            if (rfs == null)
            {
                throw new Exception("The ReferencedFileSave being used by the UI for adding project specific files is null.  It shouldn't be");
            }
#endif

            var CollectionEditor = new ProjectSpecificFileCollectionEditorForm
            {
                Value = ((ProjectSpecificFileDisplayer)value).Instance as ProjectSpecificFileCollection,
                Rfs   = ((ReferencedFileSavePropertyGridDisplayer)context.Instance).Instance as ReferencedFileSave
            };

            editorService.ShowDialog(CollectionEditor);

            return(CollectionEditor.Value);

            //return base.EditValue(context, provider, value);
        }
        public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
        {
            if (context == null || context.Instance == null || provider == null)
                return value;

            var editorService = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService));

            ReferencedFileSave rfs = ((ReferencedFileSavePropertyGridDisplayer)context.Instance).Instance as ReferencedFileSave;

#if DEBUG
            if (rfs == null)
            {
                throw new Exception("The ReferencedFileSave being used by the UI for adding project specific files is null.  It shouldn't be");
            }
#endif

            var CollectionEditor = new ProjectSpecificFileCollectionEditorForm
            {
                Value = ((ProjectSpecificFileDisplayer)value).Instance as ProjectSpecificFileCollection,
                Rfs = ((ReferencedFileSavePropertyGridDisplayer)context.Instance).Instance as ReferencedFileSave
            };

            editorService.ShowDialog(CollectionEditor);

            return CollectionEditor.Value;

            //return base.EditValue(context, provider, value);
        }