Progress Telerik UI for Blazor
The Telerik UI for Blazor Editor component is a WYSIWYG in-app editor designed for the creation of rich documents. Users can always open their favorite document editor and apply their changes there but why have them rely on another app when they can do everything in your project? The format of the resulting doc is HTML so it can be easily presented elsewhere in the application.
A Toolbar is rendered on the top of the Editor component and provides access to the commands available to the user. Commands include everything you would expect from an editor - undo and redo, changing the text decorations and weight, font, alignment, insertion of tables, bullet lists, etc. The toolbar uses your app’s theme for its visual style so you can transform its looks to fit the app.
The commands available on the Toolbar are called tools. The Editor ships with a plethora of tools and by default will display them all on the toolbar. These include a color palette to pick the color, button for toggling bold, italic or underline, align the text, etc. They're also accessible programmatically and you can execute them from code if need be. The set of items is completely customizable. If you want to remove an unnecessary command or even add a custom command this is easily doable as the controls takes a list of IEditorTools which can contain as many or as few commands you want to.
The Editor control can be configured to work either as an IFrame (the default) or as a Div. The difference between the two is the type of element which hosts the content area. When the content is displayed in an IFrame, it doesn’t inherit CSS rules from the current page. This makes it impossible to erroneously introduce a style which will break the editor but may also be limiting.
The HTML format of the generated document might be impractical in some situations where you would need a more standard one like .doc, .rtf or .pdf. Your Blazor license also includes access to the Telerik Document Processing Tools which you can use to import and export the contents of the Editor to your preferred file type.
The built-in tools are fully localizable, and their tooltips will change depending on the currently active language. This makes the editor usable in any app, regardless of the user's language skills.
Every once in a while (100ms by default), if the user has changed the contents of the Editor, the control will trigger the ValueChanged event.
Like most other Telerik UI for Blazor components, the Editor has built-in Keyboard Navigation implemented which allows you to easily navigate through it by using just the keyboard.