DevExpressWinForms-AlertControl-使用教程

文章目录

  • AlertControl-使用教程
    • 一、将 AlertControl 添加到 Form
    • 二、编辑 AlertControl 的 HtmlTemplate
      • HTML Template Editor介绍
      • 编辑HTML Template
    • 三、使用AlertControl
      • 弹出Alert
      • Alert中的按钮事件
      • 获取 Alert 标题等信息
      • 向Alert传递参数
    • 总结
    • 源码

AlertControl-使用教程

一、将 AlertControl 添加到 Form

在使用 AlertControl 之前,需要先将其添加到 Form 中。具体操作步骤如下:

    1. 从工具箱添加组件:在工具箱里找到 AlertControl 并双击,它就会被添加到 Form 中。
      工具箱
    1. 修改组件名称:为了便于后续引用和管理,将添加的 AlertControl 名称修改为 acAlert。
      alert-属性

二、编辑 AlertControl 的 HtmlTemplate

在完成 AlertControl 的添加和命名后,需要对其 HtmlTemplate 进行编辑,这就会用到 HTML Template Editor。

HTML Template Editor介绍

    1. 打开编辑器:点击 HtmlTemplate 右侧的按钮,即可打开 HTML Template Editor。
      alert-属性
    1. 编辑器界面:HTML Template Editor 拥有直观的操作界面。
      HTML Template Editor
    1. 工具栏功能:该编辑器的工具栏提供了丰富的功能。
    • 撤销与重做操作:Undo(撤销)和 Redo(重做)功能方便你纠正误操作或恢复之前的修改。
      撤销与重做操作

    • 插入代码片段:Insert Snippet 功能允许你快速插入常用的代码片段,提高编辑效率。
      插入代码片段

    • 从模板库插入:Insert from Gallery 功能让你可以从模板库中选择合适的模板插入到编辑器中。
      从模板库插入

    • 保存到模板库:Save to Gallery 功能可以将你编辑好的模板保存到模板库,方便后续复用。
      保存到模板库

编辑HTML Template

如果你熟悉 HTML 和 CSS,可直接在 HTML Template Editor 中进行编辑。这里推荐使用 Insert from Gallery 功能来创建 HTML Template。

    1. 插入模板:从模板库中选择合适的模板插入到编辑器中。
      插入模板
    1. 修改并保存:对插入的模板进行 HTML 和 CSS 的修改,完成后点击保存按钮。
      修改并保存

三、使用AlertControl

完成上述步骤后,就创建好了一个完整的 Alert,在需要的时候弹出即可。

弹出Alert

以下是设置 Alert 显示效果并弹出的代码示例:

// 设置显示速度
this.acAlert.FormDisplaySpeed = AlertFormDisplaySpeed.Fast;
// Alert停留时间(ms)
this.acAlert.AutoFormDelay = 2000;
// Alert显示位置
this.acAlert.FormLocation = AlertFormLocation.BottomRight;
// 弹出Alert
this.acAlert.Show(owner: this,caption: "这是一个警告",text: "别惹我,我是危险的人"
);

Alert中的按钮事件

若在 Alert HTML Template 中添加了按钮,可以为这些按钮添加响应事件。
alert

  • 添加事件:使用以下代码添加 HtmlElementMouseClick 事件。
this.acAlert.HtmlElementMouseClick += new AlertHtmlElementMouseClickEventHandler(this.OnAlertHtmlElementMouseClick);
  • 事件处理函数:编写事件处理函数,根据按钮的不同 ID 执行相应的逻辑。
private void OnAlertHtmlElementMouseClick(object sender, AlertHtmlElementMouseEventArgs e)
{switch (e.ElementId){case "yes":// TODO: 添加逻辑// ...break;case "unshown":// TODO: 添加逻辑// ...break;case "cancel":// TODO: 添加逻辑// ...e.HtmlPopup.Close();break;default:break;}
}

获取 Alert 标题等信息

可以在 HtmlElementMouseClick 事件中获取 Alert 的标题等信息,示例代码如下:

var caption = e.HtmlPopup.AlertInfo.Caption;

向Alert传递参数

AlertControl 参数默认使用 AlertInfo 类,AlertControl.Show 有多个重载方法,调用时会创建 AlertInfo 实例,或者直接传入 AlertInfo 作为参数。在 Html Template 中绑定参数时,要与 AlertInfo 属性名相同,否则无法显示。以下是 HTML 和 C# 代码示例:

<div class="frame" id="frame"><div class="content"><div class="text caption">${Caption}</div><div id="content"><div class="text message">${Text}</div></div></div><div class="buttons"><div class="button" tabindex="1" id="yes">确定</div><div class="button" tabindex="2" id="unshown">不在提示</div><div class="button" tabindex="3" id="cancel">取消</div></div>
</div>
this.acAlert.Show(owner: this,caption: "这是一个警告",text: "别惹我,我是危险的人"
);
var info = new AlertInfo(caption: "这是一个警告", text: "别惹我,我是危险的人");
this.acAlert.Show(owner: this, info);

总结

本教程详细介绍了如何在 Form 中使用 AlertControl 组件。首先,将 AlertControl 添加到 Form 并修改其名称。接着,通过 HTML Template Editor 编辑 Alert 的 HtmlTemplate,可利用其丰富的工具栏功能提高编辑效率。最后,介绍了如何弹出 Alert、处理 Alert 中的按钮事件、获取 Alert 信息以及向 Alert 传递参数。按照这些步骤操作,你可以灵活运用 AlertControl 组件,在需要的时刻弹出自定义的 Alert 提示框。若想向 AlertControl 传递自定义参数,可参考官网示例进一步探索。

源码

https://gitcode.com/huyu107/DevExpress.WinForms

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/80343.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

制作项目进度表常用的 8 款项目管理工具分享

在数字化管理和高效协作的今天&#xff0c;项目进度表软件已经成为企业管理不可或缺的工具。无论是中小型企业还是大型机构&#xff0c;都需要通过精准的项目计划和实时的进度跟踪来确保业务目标的顺利达成。这篇文章将聚焦项目进度表软件&#xff0c;深入探讨市场上8款主流产品…

SecureCRT网络穿透/代理

场景 公司的办公VPN软件只有Windows系统版本&#xff0c;没有Macos系统版本&#xff0c;而日常开发过程中需要先登录VPN后&#xff0c;然后才能登录应用服务器。 目的&#xff1a;Macos系统在使用SecureCRT时&#xff0c;登录服务器&#xff0c;需要走Parallels Desktop进行网络…

【计算机网络-传输层】传输层协议-TCP核心机制与可靠性保障

&#x1f4da; 博主的专栏 &#x1f427; Linux | &#x1f5a5;️ C | &#x1f4ca; 数据结构 | &#x1f4a1;C 算法 | &#x1f152; C 语言 | &#x1f310; 计算机网络 上篇文章&#xff1a;传输层协议-UDP 下篇文章&#xff1a; 网络层 我们的讲解顺序是&…

OpenMagnetic的介绍与使用

1. Background OM&#xff08;OpenMagnetic&#xff09;OpenMagnetics&#xff0c;能涵盖气隙磁阻&#xff0c;磁导率&#xff0c;铁芯损耗、磁滞损耗、涡流电流损耗、涡流效应、漏感、温升的计算与仿真[1]。 铁损计算模型&#xff1a;改进的Steinmetz方程[2] 气隙阻抗计算&…

【JVM】从零开始深度解析JVM

本篇博客给大家带来的是JVM的知识点, 重点在类加载和垃圾回收机制上. &#x1f40e;文章专栏: JavaEE初阶 &#x1f680;若有问题 评论区见 ❤ 欢迎大家点赞 评论 收藏 分享 如果你不知道分享给谁,那就分享给薯条. 你们的支持是我不断创作的动力 . 王子,公主请阅&#x1f680; …

字符串---Spring字符串基本处理

一、String类的特性 不可变性 String对象一旦创建&#xff0c;内容不可更改&#xff0c;任何修改操作都会生成新对象。字符串常量池 字符串字面量&#xff08;如"abc"&#xff09;直接存储在常量池中&#xff0c;重复字面量共享同一内存地址。创建方式 虽然都是字符…

26考研——中央处理器_CPU 的功能和基本结构(5)

408答疑 文章目录 一、CPU 的功能和基本结构CPU 的功能CPU 的基本结构运算器控制器 CPU 的寄存器运算器中的寄存器控制器中的寄存器 八、参考资料鲍鱼科技课件26王道考研书 九、总结 一、CPU 的功能和基本结构 CPU 的功能 中央处理器&#xff08;CPU&#xff09;由运算器和控…

传统数据展示 vs 可视化:谁更打动人心?

数据&#xff0c;每天都在我们身边流动&#xff1a;从你手机里的健康步数&#xff0c;到企业财报中的营收增长&#xff0c;再到国家发布的经济指标。但问题是——你怎么“看”这些数据&#xff1f; 过去&#xff0c;我们习惯用表格、文字和报告来展示数据&#xff0c;这种方式…

Base64 编码原理详细解析

Base64 编码是一种常见的数据编码方式&#xff0c;它将二进制数据转化为可打印的 ASCII 字符串。Base64 编码广泛应用于电子邮件、URL 编码、HTTP 请求和响应中等场景。它的核心作用是让二进制数据可以通过仅支持文本的协议或媒介进行传输。本文将更深入地探讨 Base64 编码的原…

一周学会Pandas2 Python数据处理与分析-Pandas2数据排序操作

锋哥原创的Pandas2 Python数据处理与分析 视频教程&#xff1a; 2025版 Pandas2 Python数据处理与分析 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili Pandas 2提供了多种灵活的数据排序方法&#xff0c;主要针对 DataFrame 和 Series 对象。 1. 按值排序&#xff1a;s…

计算机二级(C语言)已过

非线性结构&#xff1a;树、图 链表和队列的结构特性不一样&#xff0c;链表可以在任何位置插入、删除&#xff0c;而队列只能在队尾入队、队头出队 对长度为n的线性表排序、在最坏情况下时间复杂度&#xff0c;二分查找为O(log2n)&#xff0c;顺序查找为O(n)&#xff0c;哈希查…

Windows Server 2025开启GPU分区(GPU-P)部署DoraCloud云桌面

本文描述在ShareStation工作站虚拟化方案的部署过程。 将服务器上部署 Windows Server、DoraCloud&#xff0c;并创建带有vGPU的虚拟桌面。 GPU分区技术介绍 GPU-P&#xff08;GPU Partitioning&#xff09; 是微软在 Windows 虚拟化平台&#xff08;如 Hyper-V&#xff09;中…

Android RxJava框架分析:它的执行流程是如何的?它的线程是如何切换的?如何自定义RxJava操作符?

目录 RxJava是什么&#xff1f;为什么使用。RxJava是如何使用的呢&#xff1f;RxJava如何和Retrofit一起使用。RxJava源码分析。 &#xff08;1&#xff09;他执行流程是如何的。&#xff08;2&#xff09;map&#xff08;3&#xff09;线程的切换。 如何自定义RxJava操作符…

QT的初始代码解读及其布局和弹簧

this指的是真正的当前正在显示的窗口 main函数&#xff1a; Widget w是生成了一个主窗口&#xff0c;QT Designer是在这个主窗口里塞组件 w.show()用来展示这个主窗口 头文件&#xff1a; namespace Ui{class Widget;}中的class Widget和下面的class Widget不是一个东西 Ui…

什么是AI写作

一、AI写作简介 AI 写作正在成为未来 10 年最炙手可热的超级技能。已经有越来越多的人通过 AI 写作&#xff0c;在自媒体、公文写作、商业策划等领域实现了提效&#xff0c;甚至产生了变现收益。 掌握 AI 写作技能&#xff0c;不仅能提高个人生产力&#xff0c;还可能在未来的 …

13.原生测试框架Unittest解决用例组织问题 与测试套件的使用

13. 原生测试框架Unittest解决用例组织问题 与测试套件的使用 一、测试架构核心组件解析 1.1 系统组成模块 #mermaid-svg-bYie0B3MLRp0HL4g {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-bYie0B3MLRp0HL4g .erro…

UE5 脚部贴地不穿过地板方案

UE自带的IK RIG和ControlRig技术 【UE5】角色脚部IK——如何让脚贴在不同斜度的地面(设置脚的旋转)_哔哩哔哩_bilibili 实验后这个还是有一部分问题,首先只能保证高度不能穿过,但是脚步旋转还是会导致穿模 IK前,整个模型在斜坡上会浮空 参考制作:https://www.youtube.com/w…

关于 js:4. 异步机制与事件循环

一、同步 vs 异步 1. 什么是同步&#xff08;Synchronous&#xff09; 同步代码就是一行一行、按顺序执行的。当前行没有执行完&#xff0c;下一行不能动。 示例&#xff1a; console.log("A"); console.log("B"); console.log("C");输出&am…

如何通过外网访问内网?对比5个简单的局域网让互联网连接方案

在实际应用中&#xff0c;常常需要从外网访问内网资源&#xff0c;如远程办公访问公司内部服务器、在家访问家庭网络中的设备等。又或者在本地内网搭建的项目应用需要提供互联网服务。以下介绍几种常见的外网访问内网、内网提供公网连接实现方法参考。 一、公网IP路由器端口映…

java的输入输出模板(ACM模式)

文章目录 1、前置准备2、普通输入输出API①、输入API②、输出API 3、快速输入输出API①、BufferedReader②、BufferedWriter 案例题目描述代码 面试有时候要acm模式&#xff0c;刷惯leetcode可能会手生不会acm模式&#xff0c;该文直接通过几个题来熟悉java的输入输出模板&…