`
water84222
  • 浏览: 369578 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

ASP.NET中实现MSN通知消息功能 选择自 qdzx2008 的 Blog

阅读更多
 

现在有大量的第三方控件存在,这些控件包括了开发的各个方面,但对于开发人员而言选择一个合适的控件却很难,所以今天我们要推荐的是一个可以实现类似MSN弹出通知消息功能的控件:
  下载控件:PopupWin

  使用范例

  MSN由个很好的功能,就是每当你的MSN好友上线时,MSN会自动在窗体托盘的右下角由下往上弹出消息框来通知你,这个功能十分实用,比如在论坛里,当有新回复你的帖子时,系统会自动弹出消息提示框,又或者在一个电子政务的系统里,当收到新的邮件或者工作单时,可以使系统弹出消息框提示等等。那么,在ASP.NET构建的Web应用中,如何实现这样的功能呢?在本文中,向读者推荐一个可以实现类似MSN的通知消息窗口效果的.NET控件。

  首先让我们来看下该控件实现后的样子,如下图:

可以看到,这个控件可以在各类型的浏览器中使用(IE,MOZILLA,NETSCAPE,OPERA),而且我们还可以自定义颜色,还可以进行拖拉,如下图:

  下面我介绍这个控件的一些使用方法。

  首先,在该控件中,有两种事件可以被激发:Linkcliked事件(当消息框内的连接被点击时触发)和Popupclosed事件(当消息框窗口被关闭时触发)。控件有三种方式对这些事件进行处理,而actiontype属性的取值,则决定了这三种方式:

  1)messagewindow(默认):默认的弹出窗口方式,将以设置好的Title属性和Text属性为标题和窗口内的文字说明。

  2)openlink:此时,控件允许当点击窗口内的文字链接时,将以打开新窗口的方式打开该链接。

  3)raiseevenst:当选择该属性时,控件将会在服务端处理linkcliked事件和popupclosed事件。

  在使用该控件时是十分方便的,只需要在visual studio .net 中,使用add/remove toolbox功能,选择该控件的dll,之后,该控件就会出现在工具箱中,就可以拖拉的方式放到网页中去应用。

  单击该控件,在其设计器中,会发现有丰富的属性(详细的属性,事件说明请参考该控件的文档)。在设计器中的"操作"分类栏中,可以指定控件如何处理当用户关闭窗口和点击窗口内的文字时打开的新链接;在"文字"和"设计"分类栏中,将可以设计弹出消息窗口的字体,颜色,布局(如设置是从左下角还是从右下角弹出);在"行为"分类栏中,可以设置窗口弹出的弹出速度,是否自动在页面加载后就弹出,以及窗口在弹出多久后会自动关闭,窗口是否可以设置为自由拖拉等等。


下面举例通过代码说明如何使用:

  在popup.aspx中:

<!-- Popup.aspx -->
<%@ Register TagPrefix="cc1" Namespace="EeekSoft.Web"
Assembly="EeekSoft.Web.PopupWin" %>

<cc1:popupwin id="popupWin" runat="server" visible="False"
colorstyle="Blue" width="230px" height="100px" dockmode="BottomLeft"
windowscroll="False" windowsize="300, 200"></cc1:popupwin>

  在code-behind代码中写入:

// Popup.aspx.cs

//设置为默认的消息窗口
popupWin.ActionType=EeekSoft.Web.PopupAction.MessageWindow;

//设置窗口的标题,消息文字
popupWin.Title="This is popup";
popupWin.Message="<i>Message</i> displayed in popup";
popupWin.Text="Text to show in new window..";

//设置颜色风格
popupWin.ColorStyle=EeekSoft.Web.PopupColorStyle.Green;
//设置窗口弹出和消失的时间
popupWin.HideAfter=5000;
popupWin.ShowAfter=500;
popupWin.Visible=true; 

  在该控件的基础上,我们再增强该控件的功能,实现一个叫popupanchor的控件。该控件可以动态检测客户端的事件,比如在一个输入表单中,每当你在文本框填完数据,将鼠标的焦点转移到另外的文本框时,会自动弹出消息提示框。而且,使用该控件,还可以动态更改原先弹出窗口的标题和文字。Popipanchor控件是配合popupwin控件使用的,比如,想重新打开已经弹出过的窗口框,可以这样设置,添加一个popipanchor控件,设置popuptoshow属性,指明要控制的是哪一个弹出消息框的窗口,之后并可以设置相关的handledevent属性,指明要击发的是什么样的事件(比如onfocus,ondblick)等,如下图

 
 
 用下面的的代码,可以重新设置已经弹出过的消息窗口的标题文字,并让其再次弹出:
<!-- Anchor.aspx -->
<%@ Register TagPrefix="cc1" Namespace="EeekSoft.Web" Assembly="EeekSoft.Web.PopupWin" %>
<cc1:popupwin id="popupWin" runat="server" visible="False"
   colorstyle="Blue" width="230px" height="100px" dockmode="BottomLeft"
   windowscroll="False" windowsize="300, 200">
</cc1:popupwin>
<cc1:popupwinanchor id="popupAnchor" runat="server" changetexts="False"></cc1:popupwinanchor>
<span id="spanreopen"> Click here to reopen popup !</span>
  code-behind文件中的代码如下:
// Anchor.aspx.cs
// Handle onclick event ..
//设置其响应的事件为onclick
popupAnchor.HandledEvent="onclick";
popupAnchor.LinkedControl="spanReopen";
popupAnchor.PopupToShow="popupWin";
popupWin.Visible=true;
popupWin.AutoShow=true;
  则上面的代码可以实现,当点击spanreopen区域时,可以使已经弹出的消息窗口再次弹出。
  DEMO例子里演示了如何使用popupanchor控件,如下图,当点击第一个文本框时,弹出窗口,提示要输入文字;当输入完第一个文本框的内容时,将鼠标移动到第二个文本框时,又会弹出第二个窗口:

 

 

  在本文提供的下载中,提供了该控件的完整代码,使用控件的范例工程,和关于该控件的详细事件方法说明的CHM文件,可以在vs.net 2003上运行通过。

<!---->
 
分享到:
评论

相关推荐

    Macbook录屏软件,KAP,开源免费

    Macbook上免费的,最简单好用的,干净清洁的,不占资源的录屏软件。 从某度上搜索“Macbook录屏软件”,前几页全部都是各种各样的收费软件 再从某度上搜索“Macbook 免费录屏软件”,还是会出现各种各样的收费软件推荐,然后会有OBS studio。obs也挺好的,不过osb操作有点复杂,对于只需要简单录屏来说,根本用不到obs stidio。

    pyzmq-25.0.2-cp310-cp310-musllinux_1_1_x86_64.whl

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    20石膏板吊顶工程.doc

    20石膏板吊顶工程

    算法部署-基于OpenVINO+Python部署YOLOv9目标检测算法-附项目源码+一键执行-优质项目实战.zip

    算法部署_基于OpenVINO+Python部署YOLOv9目标检测算法_附项目源码+一键执行_优质项目实战

    Python语言教程Python语言教程

    Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程Python语言教程

    tensorflow-rocm-2.10.1.540-cp310-cp310-manylinux2014-x86-64.whl

    tensorflow安装

    CISCO 思科 固件 ASR1002-X asr1002x-universalk9.17.09.03a.SPA.bin

    CISCO 思科 固件 软件 IOS OS ASR1002-X asr1002x-universalk9.17.09.03a.SPA.bin

    grpcio-1.24.3-cp34-cp34m-win32.whl

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    协同过滤推荐项目+源代码+文档说明

    - 不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------

    JavaScript js运算符 示例代码

    本资源文件是js运算符相关学习代码的示例 包含算术运算符、比较运算符、逻辑运算符等 JavaScript 是一种广泛使用的脚本语言,主要用于网页和Web应用程序的客户端开发。 JavaScript(简称JS)是一种轻量级、解释型、动态类型的脚本语言,主要用于网页前端开发,但也被广泛用于服务器端和移动应用开发。它最初由Netscape公司的Brendan Eich在1995年为Netscape Navigator浏览器设计,目的是增强网页交互性。 JavaScript 是一种广泛使用的脚本语言,主要用于网页和Web应用程序的客户端开发。 JavaScript(简称JS)是一种轻量级、解释型、动态类型的脚本语言,主要用于网页前端开发,但也被广泛用于服务器端和移动应用开发。它最初由Netscape公司的Brendan Eich在1995年为Netscape Navigator浏览器设计,目的是增强网页交互性。 JavaScript 是一种广泛使用的脚本语言,主要用于网页和Web应用程序的客户端开发。 JavaScript(简称JS)是一种轻量级、解释型、动态类型的脚本语言,主要用于网页前端

    pyzmq-25.0.0-cp39-cp39-musllinux_1_1_x86_64.whl

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    debugpy-1.8.1-cp38-cp38-macosx_11_0_x86_64.whl

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    Paragon NTFS for mac无限试用的办法和工具

    亲测15.10.590版本是可以用的,其他版本理论上也可以;本工具可以在该软件试用期已经过期的情况下重新获取10天试用期

    基于ssm框架小型企业办公自动化系统毕业论文

    第1章 绪论 1 1.1 课题背景 1 1.2 课题意义 1 1.3 研究内容 2 第2章 开发环境与技术 3 2.1 MYSQL数据库 3 2.2 JSP技术 3 2.3 SSM框架 4 2.4 Vue框架 4 第3章 系统分析 6 3.1 可行性分析 6 3.1.1 技术可行性 6 3.1.2 经济可行性 6 3.1.3 操作可行性 6 3.2 系统流程 7 3.2.1 操作流程 7 3.2.2 登录流程 7 3.2.3 删除信息流程 8 3.2.4 添加信息流程 9 3.3 性能需求 9 3.4 功能需求 10 第4章 系统设计 15 4.1 设计原则 15 4.2 功能结构设计 15 4.3 数据库设计 17 4.3.1 数据库概念设计 18 4.3.2 数据库物理设计 21 第5章 系统实现 26 5.1 管理员功能实现 26 5.1.1 部门经理管理 26 5.1.2 总经理管理 26 5.1.3 审批流程管理 27 5.1.4 通知公告管理 27 5.2 部门经理功能实现 28 5.2.1 员工管理 28 5.2.2 员工留言管理 28 5.2.3 员工工资管理 29 5

    ferry开源工单系统源代码

    工单系统相关功能: 工单提交申请 工单统计 多维度工单列表,包括(我创建的、我相关的、我待办的、所有工单) 自定义流程 自定义模版 任务钩子 任务管理 催办 转交 手动结单 加签 多维度处理人,包括(个人,变量 (创建者、创建者负责人)) 排他网关,即根据条件判断进行工单跳转 并行网关,即多个节点同时进行审批处理 通知提醒(目前仅支持邮件) 流程分类管理 权限管理相关功能,使用 casbin 实现接口权限控制: 用户、角色、岗位的增删查改,批量删除,多条件搜索 角色、岗位数据导出 Excel 重置用户密码 维护个人信息,上传管理头像,修改当前账户密码 部门的增删查改 菜单目录、跳转、按钮及 API 接口的增删查改 登陆日志管理 左菜单权限控制 页面按钮权限控制 API 接口权限控制v

    网络安全相关的密码学.docx

    网络安全相关的密码学是保护信息在存储、传输和处理过程中免受未经授权访问和篡改的关键技术。以下是对网络安全中密码学的清晰介绍,包括其基本概念、加密算法、应用场景和重要性等方面的内容: 一、密码学基本概念 密码学是研究秘密通信的科学与技术,是实现安全信息交换的基础。 密码学主要分为密码编码学和密码分析学。密码编码学主要研究对信息编码,实现对信息的隐蔽;而密码分析学则主要研究加密消息的破译或信息的伪造。 密码系统由明文空间、密文空间、密码方案和秘钥空间组成。其中,明文是未经加密的原始信息;密文是经过伪装后的明文;密码方案包括加密算法和解密算法;秘钥是加密和解密算法的操作在称为秘钥的元素的控制下进行。 二、加密算法 对称加密算法:主要特点是加解密使用同一个密钥,且加密解密速度较快。常见的对称加密算法包括DES(数据加密标准)、AES(高级加密标准)和RC4等。其中,DES的密钥长度为56位,但已经容易被暴力破解;而AES支持128位、192位和256位密钥长度,安全性较高。 非对称加密算法:使用一对密钥:公钥与私钥。加密使用公钥,解密使用私钥。R

    ssm美食推荐管理系统源码

    这份文档是一篇关于开发美食推荐管理系统的毕业设计论文。论文详细介绍了该系统的研究背景、现状、设计目标、需求分析、设计方案、实现过程以及系统测试。以下是对文档内容的简介: - **研究背景**:随着信息科学化的发展,科学化的管理在提高工作效率和促进发展方面的重要性日益凸显。 - **开发技术**:系统采用JSP技术进行开发,后台数据库使用MySQL,系统架构遵循B/S(浏览器/服务器)结构。 - **主要用户**:系统的主要使用者包括管理员和普通用户,为他们提供个性化的界面和服务。 - **功能模块**:系统包含多个功能模块,如管理员的用户管理、美食分类管理、热门美食管理、美食教程管理、美食店铺管理、美食社区和系统管理等;用户则可以进行个人中心管理、美食教程管理、我的收藏管理等。 - **系统设计**:文档详细论述了系统的设计过程,包括需求分析、系统架构设计、数据库设计等。 - **系统测试**:论文对系统测试的意义、测试方法和测试分析进行了详细说明,确保系统功能完善、操作简便、运行稳定。 - **结论**:作者通过开发美食推荐管理系统,体会到了学习新技术的重要性和实践经验

    MAVEN 教程和详细讲解

    MAVEN 教程和讲解

    CCT-VB2021(上)模拟考试(2)

    CCT-VB2021(上)模拟考试(2)

    VSCodeConfigHelper.exe

    一个自动化配置vscode c/c++的实用工具

Global site tag (gtag.js) - Google Analytics