Blazor 组件库 BootstrapBlazor 中EditorForm组件介绍
组件介绍
EditorForm 组件是一个非常实用的组件,当进行数据编辑时,仅需要将 Model 属性赋值即可。
绑定模型默认自动生成全部属性,可以通过设置
AutoGenerateAllItem更改为不自动生成如不需要编辑列,设置
Editable即可,默认值为true生成编辑组件复杂编辑列,设置
EditTemplate模板,进行自定义组件进行编辑表单内按钮可以设置多个,设置
Buttons模板即可
默认情况下,我们只需要绑定Model就可以了,最基础的代码可以只有一行。
<EditorForm Model="@Model">
</EditorForm>
会显示Model中的所有字段。
另外我们可以通过绑定内容来做其他的处理。

这个例子的代码如下:
<EditorForm Model="@Model">
<FieldItems>
<EditorItem @bind-Field="@context.Education" Editable="false" />
<EditorItem @bind-Field="@context.Complete" Editable="false" />
<EditorItem @bind-Field="@context.Hobby" Items="@Hobbys" />
</FieldItems>
<Buttons>
<Button Icon="fa fa-save" Text="提交" />
</Buttons>
</EditorForm>
其中,我们通过 EditorItem配置Education、Complete在EditorForm中不显示,并且配置Hobby为复选框组,并且指定可选内容。
组件的其他属性
Model:绑定的数据模型。
FieldItems:绑定的列模板,可以对每列进行单独处理。
Buttons:按钮模板,处理内部的按钮。
IsDisplay:是否显示为Display控件,默认为false
ShowLabel:是否显示Label,默认为true。
ShowLabelTooltip:是否在鼠标停留时显示全部信息,默认不显示。
AutoGenerateAllItem:是否生成全部字段。默认为ture。当设置为false的时候,则需要在FieldItems中自己设置所有需要显示的内容。
一个例子是:
<EditorForm Model="@Model" AutoGenerateAllItem="false">
<FieldItems>
<EditorItem @bind-Field="@context.Name" />
<EditorItem @bind-Field="@context.Count" />
</FieldItems>
</EditorForm>
这样就只显示Name和Count两个字段。
ItemsPerRow:每行显示组件数量,默认一行只显示一个控件。
RowType:组件布局方式,可选值为Row|Inline,默认值为Row。
LabelAlign:在Inline模式下标签的对齐方式,可选值有 None|Left|Center|Right
EditorItem 的属性
Field:绑定的字段。
FieldType:绑定字段的类型。如果绑定字段时使用了@bind-Field,这里会自动推断类型,可以不写FieldType。
Editable:是否允许编辑,默认为true。
Readonly:是否只读。
Text:前端标签的名字,ShowLabel为true的时候显示。
EditTemplate:自定义编辑模板。
一个例子:
<EditorForm Model="Model" AutoGenerateAllItem="false">
<FieldItems>
<EditorItem @bind-Field="@context.Name" />
<EditorItem @bind-Field="@context.Address" />
<EditorItem @bind-Field="@context.Count">
<EditTemplate Context="value">
<div class="col-12 col-sm-6">
<Select SkipValidate="true" @bind-Value="@value.Count" Items="@DummyItems" ShowSearch="true" />
</div>
<div class="col-12 col-sm-6">
<BootstrapInput Value="@value.Count" Readonly="true" />
</div>
</EditTemplate>
</EditorItem>
<EditorItem @bind-Field="@context.Hobby" Items="@Hobbys" />
</FieldItems>
<Buttons>
<Button ButtonType="ButtonType.Submit" Icon="fa fa-save" Text="提交" />
</Buttons>
</EditorForm>
这个例子中,我们给Count字段添加了EditTemplate,然后所以我们在EditorTemplate里可以自由处理Count,添加其他组件,只要保证最后bind修改Count即可。
Blazor 组件库 BootstrapBlazor 中EditorForm组件介绍的更多相关文章
- Blazor 组件库 BootstrapBlazor 中Editor组件介绍
组件介绍 Editor组件是对Summernote 组件的二次封装. 组件分为div模式和editor模式. 默认状态下editor模式的组件样子如下: 其代码如下: <Editor @bind ...
- Blazor 组件库 BootstrapBlazor中 Ajax 组件的使用
组件解决的问题 由于Blazor在与服务器连接时使用了Websocket,仅在第一次连接时会走原MVC的连接逻辑.所以,我们无法在这个过程中完成例如身份认证.cookie处理等操作. 此组件即为解决此 ...
- Vue3 企业级优雅实战 - 组件库框架 - 10 实现组件库 cli - 下
上文创建了一堆 utils.component-info,并实现了新组件模块相关目录和文件的创建.本文继续实现后面的内容. 1 组件样式文件并导入 在 src/service 目录中创建 init-s ...
- Antd组件库,利用Menu组件模拟一个简单Tree组件
当前工作中,前端的主要技术栈用是vue. 那React怎么办呢?总不至于把他扔在墙角吧! 只能在一些很小的项目上,也只有自己一个前端的时候,悄悄的上React. 当然,React项目UI组件还是最喜欢 ...
- Vue3 企业级优雅实战 - 组件库框架 - 3 搭建组件库开发环境
前文已经初始化了 workspace-root,从本文开始就需要依次搭建组件库.example.文档.cli.本文内容是搭建 组件库的开发环境. 1 packages 目录 前面在项目根目录下创建了 ...
- 【Angular】关于angular引用第三方组件库无法改变其组件样式 :host ::ng-deep
[Angular]关于angular引用第三方组件库无法改变其组件样式 :host ::ng-deep css修改:无效 .ant-input-affix-wrapper .ant-input:not ...
- 基于vue2.0前端组件库element中 el-form表单 自定义验证填坑
eleme写的基于vue2.0的前端组件库: http://element.eleme.io 我在平时使用过程中,遇到的问题. 自定义表单验证出坑: 1: validate/resetFields 未 ...
- Vue3 企业级优雅实战 - 组件库框架 - 8 搭建组件库 cli
前面的文章分享了组件库的开发.example.组件库文档,本文分享组件库 cli 开发. 1 为什么要开发组件库 cli 回顾一个新组件的完整开发步骤: 1 在 packages 目录下创建组件目录 ...
- Vue3 企业级优雅实战 - 组件库框架 - 9 实现组件库 cli - 上
上文搭建了组件库 cli 的基础架子,实现了创建组件时的用户交互,但遗留了 cli/src/command/create-component.ts 中的 createNewComponent 函数,该 ...
- BootstrapBlazor 组件库使用体验---Table篇
原文地址:https://www.cnblogs.com/ysmc/p/13323242.html Blazor 是一个使用 .NET 生成交互式客户端 Web UI 的框架: 使用 C# 代替 Ja ...
随机推荐
- EF Core – Soft Delete 实现
前言 在 SQL Server – Soft Delete 中, 讲到了如果在 SQL Server 实现 Soft Delete. 这篇来说说, EF Core 在中间扮演的角色. 主要参考 Ent ...
- typescript 5.1
http://www.patrickzhong.com/TypeScript/PREFACE.html 前言 TypeScript 官网大约从 2020 年开始要打造新版的官网,其中包括官网的样式,以 ...
- 靠着这篇笔记,我拿下了16k车载测试offer!
如何写简历 个人技能 个人技能一般不要超过10条,一般在8条内. 一.测试流程和技术 1.熟悉车载系统研发和测试流程,能独立编写各种测试文档. 2.熟悉车载系统测试用例设计思路,能独立编写仪表和车 ...
- 深入C++引用及其注意事项、对引用取地址时的内存模型、const数组等
const int f[10] = { 1,2,3,4,5,6,7,8,9,10 }; int main() { // test1 const int i = 3; int& j = cons ...
- Material Design In XAML Toolkit 5.0.0 Migration Guide
MaterialDesignInXamlToolkit 5.0有破坏性的更新,下面的连接可以用于4.x升级到5.0的一个手册.仅供参考,欢迎升级5.0时使用. https://github.com/M ...
- 2024 ByteCTF
ByteCTF 极限逃脱 题目描述:本题需要通过动态调试分析出要输入的内容,可能在某些地方会有提示出现. 这是一个IOS逆向,因为没有设备只能静态分析 流程和安卓逆向大概一致 解压拖进ida 提示输入 ...
- watch 监视搜索关键词的变化不断发送请求返回建议
watch: { keywords: { // yarn add lodash 下载lodash包 // import { debounce } from "lodash"; 引入 ...
- 2. react项目【前端】+C#【后端】从0到1
前端 1. 删除默认的src下所有文件,替换如下文件目录 2. src/index.js:
- AOT漫谈专题(第三篇): 如何获取C#程序的CPU利用率
一:背景 1. 讲故事 上篇聊到了如何对AOT程序进行轻量级的APM监控,有朋友问我如何获取AOT程序的CPU利用率,本来我觉得这是一个挺简单的问题,但一研究不是这么一回事,这篇我们简单的聊一聊. 二 ...
- Kubernetes 集群中 Ingress 故障的根因诊断
作者:scwang18,主要负责技术架构,在容器云方向颇有研究. 前言 KubeSphere 是青云开源的基于 Kubernetes 的云原生分布式操作系统,提供了比较炫酷的 Kubernetes 集 ...