public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) {
            var editorService = (IWindowsFormsEditorService) provider.GetService(typeof(IWindowsFormsEditorService));
            
            if (editorService == null) {
                return base.EditValue(context, provider, value);
            }

            var modalEditor = new RichTextEditorDialog {
                                      HtmlData = (value == null) ? string.Empty : (string) value,
                                  };

            if (editorService.ShowDialog(modalEditor) == DialogResult.OK) {
                return modalEditor.HtmlData != "<P>&nbsp;</P>" ? modalEditor.HtmlData : "<br>";
            }
            
            return value;
        }
        public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
        {
            var editorService = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService));

            if (editorService == null)
            {
                return base.EditValue(context, provider, value);
            }

            string valueWithHtmlTags = ((VSPackage.Descriptors.WorkitemPropertyDescriptor)context.PropertyDescriptor).GetDescriptionRow();
            var modalEditor = new RichTextEditorDialog
            {
                HtmlData = valueWithHtmlTags,
            };

            if (editorService.ShowDialog(modalEditor) == DialogResult.OK)
            {
                return modalEditor.HtmlData != "<P>&nbsp;</P>" ? modalEditor.HtmlData : "<br>";
            }

            return value;
        }