Blazor的Telerik UI?下载30天免费试用

内置工具

本文解释了哪些是Editor的内置工具和命令,如何以编程方式调用它们,以及它们提供了哪些功能。

如何使用这篇文章

本文描述了编辑器< em >工具而且< em >命令.

一个编辑< em >工具给定操作的可见接口。例如,加粗文本的按钮就是一个工具。内置工具可以呈现为按钮,颜色选择器或下拉列表。编辑器还支持带有自定义渲染的自定义工具

一个编辑< em >命令是操作,它以某种方式修改HTML值。每个内置的编辑器工具都有一个相关的命令。自定义工具可以执行业务逻辑或调用内置命令。

关于编辑器工具和命令的信息组织在下面的表中。下面是表头的含义:

下面是一个简单的示例,演示如何使用类名、命令名和ExecuteAsync参数。

使用Blazor编辑器的工具类名称和命令名称

@using Telerik.Blazor.Components.Editor 在编辑器中插入段落   @code {private TelerikEditor EditorRef {get;设置;} private string EditorValue {get;设置;} = @"

foo

bar

";//“粗体”,“斜体”和“下划线”是类名private List EditorTools {get;设置;} = new List() {new Bold(), new Italic(), new Underline()};private async Task InsertParagraph() {// "insertHtml"是命令名// HtmlCommandArgs是ExecuteAsync参数await EditorRef. HtmlCommandArgs是ExecuteAsync参数ExecuteAsync(new HtmlCommandArgs("insertHtml", $"

baz {DateTime.Now.Millisecond}

"));}}

内置工具和命令

内联的工具

内联工具添加或使用内联HTML元素。例如,这样的元素是<一>< img >< >强而且< em >

表1:编辑器的内联工具

类名 命令名 工具类型 描述 ExecuteAsync参数
大胆的 大胆的 按钮 应用大胆的风格 新建ToolCommandArgs(string commandName)
写成BackgroundColor 背景色 颜色 改变背景颜色 新建formatcommanddargs (string commandName, string Value)
字体颜色 字体颜色 颜色 更改文本颜色 新建formatcommanddargs (string commandName, string Value)
创建 创建 按钮 创建一个超链接 新的LinkCommandArgs(字符串href,字符串文本,字符串目标,字符串标题,null)
FontFamily fontFamily 下拉 设置字体 新建formatcommanddargs (string commandName, string Value)
字形大小 字形大小 下拉 设置文本字体大小 新建formatcommanddargs (string commandName, string Value)
斜体 斜体 按钮 应用斜体样式 新建ToolCommandArgs(string commandName)
加删除线 加删除线 按钮 应用删除线格式 新建ToolCommandArgs(string commandName)
下标 下标 按钮 使所选文本下标 新建ToolCommandArgs(string commandName)
上标 上标 按钮 使所选文本上标 新建ToolCommandArgs(string commandName)
下划线 下划线 按钮 应用下划线样式 新建ToolCommandArgs(string commandName)
拆开 拆开 按钮 删除一个超链接 新建ToolCommandArgs(string commandName)

颜色工具定制

字体颜色而且写成BackgroundColor工具公开颜色属性,该属性接受颜色集合为IEnumerable <字符串>.您可以提供的成员ColorPalettePresets的自定义列表RGB(A)或HEX颜色在不同的支持格式.也可以通过更改工具提示标题

@using Telerik.Blazor.Components.Editor   @code {private string EditorValue {get;设置;} private List EditorTools {get;设置;} = new List() {new ForeColor() {Title = "Text Color", Colors = new List {"#f00", "#ff9900", "rgb(0,128,0)", "rgba(0,0,255, .8)"}}, new BackgroundColor() {Title = "背景色",Colors = ColorPalettePresets.}}, new BackgroundColor() {Title = "背景色",Colors = ColorPalettePresets. {Basic}};}

字体工具定制

FontFamily而且字形大小工具有一个数据属性,它接受< EditorDropDownListItem列表>.使用它来定制这些下拉列表中的可用选项。你也可以通过改变下拉标签DefaultText

@using Telerik.Blazor.Components.Editor   @code {private string EditorValue {get;设置;} private List EditorTools {get;设置;} =新列表< IEditorTool >(){新FontFamily () {DefaultText =“字体”,Data =新列表< EditorDropDownListItem >(){新EditorDropDownListItem(“格鲁吉亚”、“格鲁吉亚”),新EditorDropDownListItem(“明星控制台”、“明星控制台”)}},新字形大小(){DefaultText =“文字大小”,Data =新列表< EditorDropDownListItem >(){新EditorDropDownListItem(“小”,“12 px”),新EditorDropDownListItem(“媒介”、“16 px”),新EditorDropDownListItem(“大”、“24 px”)}}};}

块工具

块工具添加或使用块HTML元素,例如<标题>< h2 >< p >而且< ul >

下表中的所有工具都是< em >按钮,除了格式,这是一个< em >下拉.

表2:编辑器的块工具

类名 命令名 描述 ExecuteAsync参数
AlignCenter alignCenter 将所选段落对齐到中心 新建ToolCommandArgs(string commandName)
AlignJustify alignJustify 说明所选段落的合理性 新建ToolCommandArgs(string commandName)
AlignLeft alignLeft 将所选段落向左对齐 新建ToolCommandArgs(string commandName)
AlignRight alignRight 将所选段落向右对齐 新建ToolCommandArgs(string commandName)
格式 格式 将标准格式应用于所选文本,如标题1、段落等。与表中的其他工具不同,这个工具是下拉菜单。 新建formatcommanddargs (string commandName, string Value)
缩进 缩进 向所选文本添加缩进 新建ToolCommandArgs(string commandName)
InsertImage insertImage 插入来自所需URL的图像 新建ImageCommandArgs(字符串src,字符串alt,字符串宽度,字符串高度)
OrderedList insertOrderedList 创建数字项目符号列表 新建ToolCommandArgs(string commandName)
减少缩进 减少缩进 从所选文本中移除缩进 新建ToolCommandArgs(string commandName)
重做 重做 重复上一次未执行的操作 新建ToolCommandArgs(string commandName)
ViewHtml setHtml 显示和更新编辑器内容的原始HTML 新的htmlcommanddargs (string commandName, string value)
撤销 撤销 返回最后一个动作 新建ToolCommandArgs(string commandName)
UnorderedList insertUnorderedList 创建项目符号列表 新建ToolCommandArgs(string commandName)

格式工具定制

格式工具公开数据财产它接受< EditorDropDownListItem列表>.使用它来减少或重新排列下拉列表中的项目。

@using Telerik.Blazor.Components.Editor   @code {private string EditorValue {get;设置;} private List EditorTools {get;设置;} = new List() {new Format() {Data = new List() {new EditorDropDownListItem("段落","p"), new EditorDropDownListItem("Heading 1", "h1")}}};}

表工具

表格工具创建和操作HTML<表>元素。这些工具可以添加或删除列和行,合并或分割单元格。

下表中的所有工具都是< em >按钮.

表3:编辑器表工具

类名 命令名 描述 ExecuteAsync参数
InsertTable insertTable 插入具有所需列和行数的表 new TableCommandArgs(int rows, int cols)
DeleteTable deleteTable 删除选定的HTML表 新建ToolCommandArgs(string commandName)
AddColumnBefore addColumnBefore 在所选列之前插入一列 新建ToolCommandArgs(string commandName)
AddColumnAfter addColumnAfter 在选定的列之后插入一个列 新建ToolCommandArgs(string commandName)
AddRowBefore addRowBefore 在选定的行之前插入一行 新建ToolCommandArgs(string commandName)
AddRowAfter addRowAfter 在选定的行之后插入一行 新建ToolCommandArgs(string commandName)
DeleteRow deleteRow 删除所选行。 新建ToolCommandArgs(string commandName)
DeleteColumn deleteColumn 删除所选列 新建ToolCommandArgs(string commandName)
MergeCells mergeCells 合并选定的单元格 新建ToolCommandArgs(string commandName)
SplitCell splitCell 分裂已经合并的细胞 新建ToolCommandArgs(string commandName)

没有内置工具的命令

一些编辑器命令没有内置工具。这些命令只能是调用编程

表4:不使用工具的编辑器命令

命令名 描述 ExecuteAsync的参数
cleanFormatting 清除选定文本的内联格式 新建ToolCommandArgs(string commandName)
insertHtml 在光标位置插入HTML。要插入多个节点,请将它们包装在单个元素中。
默认情况下,这是一个块命令,将传入的内联内容包装在pdiv,视上下文而定。要插入内联内容,将第三个参数设置为真正的
注意,有单独的命令用于插入链接和图像。
新的htmlcommanddargs (string commandName, string值,bool内联)

编程式的执行

您可以从组件外部或从自定义工具

为了做到这一点,您需要使用编辑参考并调用ExecuteAsync方法

使用上面的引用表查找要调用的命令的命令名及其参数。

从编辑器外部的按钮执行命令

@*点击按钮执行编辑器工具*@ @使用telerikk . blazor.components .Editor 插入hr 创建粗体文本 插入表格 插入图像 插入内线文本  @code{TelerikEditor TheEditor {get;设置;} string内容{get;设置;} = "

Lorem ipsum. "

Dolor sit meet .

";async任务插入thr(){等待编辑器。ExecuteAsync(new HtmlCommandArgs("insertHtml", "
")); } async Task InsertInlineText() { await TheEditor.ExecuteAsync(new HtmlCommandArgs("insertHtml", "John Doe", true)); } async Task InsertImage() { await TheEditor.ExecuteAsync(new ImageCommandArgs("https://demos.telerik.com/blazor-ui/images/articles/1-220x140.png", "the alt text", "220px", "140px")); } async Task BoldText() { await TheEditor.ExecuteAsync(new ToolCommandArgs("bold")); } async Task InsertTable() { await TheEditor.ExecuteAsync(new TableCommandArgs(4, 4)); } }

另请参阅

在本文中
Baidu
map