组件说明

Model组件是一个模态框组件,可以弹出一个对话框,适合需要定制性更大的场景。

它的样子如下:

其html代码为:

<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">弹窗标题</h5>
<button type="button" class="btn-close" aria-label="Close"></button>
</div>
<div class="modal-body">
<p>弹窗正文</p>
</div>
<div class="modal-footer">
<Button Color="Color.Secondary" Text="Close" Icon="fa fa-times"></Button>
<Button Text="Save" Icon="fa fa-save"></Button>
</div>
</div>

我们的组件遵循这个样式,组件代码为:

<Modal @ref="Modal" IsKeyboard="@IsKeyboard">
<ModalDialog Title="默认弹窗">
<BodyTemplate>
<div>我是弹窗内正文</div>
</BodyTemplate>
</ModalDialog>
</Modal>

可以看到,组件的代码量比直接写弹窗要少得多。

但是这个弹窗默认是不显示的,我们可以使用ref获取到弹窗实例来显示它,如上面的弹窗,引用为:

[NotNull]
private Modal? Modal { get; set; }

然后我们弹窗就可以写为:

await Modal.Toggle()

组件的其他属性

HeaderTemplate:模态框的头部组件,为RenderFragment

Title:模态框的标题,此属性与HeaderTemplate互斥,只能使用一个。

BodyTemplate:模态框主要内容部分组件,为RenderFragment

FooterTemplate:模态框底部组件,为RenderFragment。为空则不显示。

IsBackdrop:是否可以点击弹窗以外的区域关闭弹窗,默认为false

IsKeyboard:是否可以使用键盘ESC关闭弹窗,默认为true

IsCentered:弹窗是否垂直居中,默认为true

IsScrolling:是否对弹窗内超长内容添加滚动条,默认为false

IsFade:是否开启淡入淡出效果,默认为true

IsDraggable:弹窗是否可拖拽,默认为false

ShowCloseButton:是否在右上方显示关闭按钮,默认为true

ShowFooter:是否显示底部,默认为true

Size:弹窗的尺寸,可选值有None / ExtraSmall / Small / Medium / Large / ExtraLarge / ExtraExtraLarge

FullScreenSize:小于指定大小时自动全屏,可选最小值有None / ExtraSmall / Small / Medium / Large / ExtraLarge / ExtraExtraLarge

ShowMaximizeButton:是否显示最大化按钮,默认为false

Blazor 组件库 BootstrapBlazor 中Modal组件介绍的更多相关文章

  1. Blazor 组件库 BootstrapBlazor 中Editor组件介绍

    组件介绍 Editor组件是对Summernote 组件的二次封装. 组件分为div模式和editor模式. 默认状态下editor模式的组件样子如下: 其代码如下: <Editor @bind ...

  2. Blazor 组件库 BootstrapBlazor中 Ajax 组件的使用

    组件解决的问题 由于Blazor在与服务器连接时使用了Websocket,仅在第一次连接时会走原MVC的连接逻辑.所以,我们无法在这个过程中完成例如身份认证.cookie处理等操作. 此组件即为解决此 ...

  3. Vue3 企业级优雅实战 - 组件库框架 - 10 实现组件库 cli - 下

    上文创建了一堆 utils.component-info,并实现了新组件模块相关目录和文件的创建.本文继续实现后面的内容. 1 组件样式文件并导入 在 src/service 目录中创建 init-s ...

  4. Antd组件库,利用Menu组件模拟一个简单Tree组件

    当前工作中,前端的主要技术栈用是vue. 那React怎么办呢?总不至于把他扔在墙角吧! 只能在一些很小的项目上,也只有自己一个前端的时候,悄悄的上React. 当然,React项目UI组件还是最喜欢 ...

  5. Vue3 企业级优雅实战 - 组件库框架 - 3 搭建组件库开发环境

    前文已经初始化了 workspace-root,从本文开始就需要依次搭建组件库.example.文档.cli.本文内容是搭建 组件库的开发环境. 1 packages 目录 前面在项目根目录下创建了 ...

  6. 【Angular】关于angular引用第三方组件库无法改变其组件样式 :host ::ng-deep

    [Angular]关于angular引用第三方组件库无法改变其组件样式 :host ::ng-deep css修改:无效 .ant-input-affix-wrapper .ant-input:not ...

  7. 基于vue2.0前端组件库element中 el-form表单 自定义验证填坑

    eleme写的基于vue2.0的前端组件库: http://element.eleme.io 我在平时使用过程中,遇到的问题. 自定义表单验证出坑: 1: validate/resetFields 未 ...

  8. Vue3 企业级优雅实战 - 组件库框架 - 8 搭建组件库 cli

    前面的文章分享了组件库的开发.example.组件库文档,本文分享组件库 cli 开发. 1 为什么要开发组件库 cli 回顾一个新组件的完整开发步骤: 1 在 packages 目录下创建组件目录 ...

  9. Vue3 企业级优雅实战 - 组件库框架 - 9 实现组件库 cli - 上

    上文搭建了组件库 cli 的基础架子,实现了创建组件时的用户交互,但遗留了 cli/src/command/create-component.ts 中的 createNewComponent 函数,该 ...

  10. iview 中Modal组件点击确定后验证信息不通过则不关闭弹窗方法

    <Modal v-model="isTemManageShow" title="管理模板" @on-ok="ok" :loading= ...

随机推荐

  1. 为什么在EffectiveJava中建议用EnumSet替代位字段,以及使用EnumMap替换序数索引

    在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,在第37条中建议 用EnumMap替换序数索引,为什么? EnumSet 在EffectiveJava中的第 36条中 ...

  2. Angular Material 18+ 高级教程 – CDK Drag and Drop

    前言 CDK Drag and Drop 和 CDK Scrolling 都是在 Angular Material v7 中推出的. 它们有一个巧妙的共同点,那就是与 Material Design ...

  3. Angular 18+ 高级教程 – 目录

    请按顺序阅读 关于本教程 初识 Angular Get Started Angular Compiler (AKA ngc) Quick View Dependency Injection 依赖注入  ...

  4. Hadoop & Redis未授权漏洞实战——Vulfocus服务攻防

    什么是未授权访问漏洞?Hadoop & Redis靶场实战--Vulfocus服务攻防 一.介绍 未授权访问,也称为未经授权的访问或非法访问,是指在没有得到适当权限或授权的情况下,个人或系统访 ...

  5. 学好QT框架之后可以做什么工作?QT技术框架现代化行业大型复杂应用的经典成功案例

    简介 本文粗略的介绍了QT框架的软件开发技术生态体系的全球影响力:QT框架在文字办公领域.CAD三维图形领域.Linux操作系统领域.物联网领域.汽车电子领域以及数字医疗领域等现代化行业的大型复杂应用 ...

  6. HeaderFile (1.2-1.6) 中 hct.h 使用教程

    下载 HeaderFile 1.2 HCT 是干什么的 辅助数据生成 主干框架 你需要包含必须的头文件 hct.h 此外,你需要实现如下函数: void create() 数据生成函数 void so ...

  7. Kubernetes的Pod调度:让你的应用像乘坐头等舱!

    一.Kubernetes 中 Pod 调度的重要性 在 Kubernetes 的世界里,Pod 调度就像是一个繁忙的交通指挥官,负责把小车(也就是我们的 Pod)送到最合适的停车位(节点).调度不仅关 ...

  8. iOS解决嵌套在ScrollView中的TableView滑动手势冲突问题

    在项目开发中用到了这种需求,顶部两个选项卡,底部列表有侧滑手势,布局是就不说了,遇到的问题是左滑的时候添加滑动手势效果.一直纠结了很久,后来想到可能是手势冲突的问题. 解决办法开启多手势代理即可,我是 ...

  9. Tarjan 算法

    远古算法笔记. dfs 生成树 无向图 对于一张连通的无向图,我们可以从任意一点开始 dfs,得到原图的一棵生成树(以开始 dfs 的那个点为根). 这棵生成树上的边称作树边,不在生成树上的边称作非树 ...

  10. 让查询可以使用 json path

    记录一下最近sv.db的完善 1. 让查询可以使用 json path 有时候我们会存储 json 到 db,也有时会只取json部分数据,或者通过json部分数据进行过滤 所以sv.db 也支持这些 ...