Asp.net Ajax Control Toolkit设计编程备忘录(色眼窥观版)——第4回(忍者专辑)

本文介绍了ASP.NET AJAX Control Toolkit中的三个实用控件:DropDown、CollapsiblePanel 和 HoverMenu,详细解析了它们的属性及应用场景,帮助开发者更好地利用这些控件优化网页布局。
色即设——设计,从网页设计师的角度出发。因为自己的的特殊性(本身是软件工程师,但是对网页设计却有浓厚的兴趣),所以我的此系列文章不仅仅从编程角度出发,还将从设计的角度出发来细数AjaxControlToolkit系列控件,告诉你这些控件最终的结构表现形式、样式,还有如何修改他们的样式使之适合于你的网页整体规划。
窥,小视也——《说文》,此小视非必小视呀。此小视的意思是:水平有限,不能望其全貌,仅能管中窥豹。所以很多地方还请高人指点则个。

相关链接:
Asp.net Ajax Control Toolkit设计编程备忘录(色眼窥观版)——第1回(柿子专辑 )
Asp.net Ajax Control Toolkit设计编程备忘录(色眼窥观版)——第2回(F4专辑)
Asp.net Ajax Control Toolkit设计编程备忘录(色眼窥观版)——第3回(UE专辑)
Asp.net Ajax Control Toolkit设计编程备忘录(色眼窥观版)——第4回(忍者专辑)
Asp.net Ajax Control Toolkit设计编程备忘录(色眼窥观版)——第5回(错不了专辑)
Asp.net Ajax Control Toolkit设计编程备忘录(色眼窥观版)——第6回(习惯专辑)

正文:

以前做一些小型网站的时候,老是觉得网页上空空的,不知道放什么东西好。但是当你做过大型网站或者大型企业内部管理系统后,你就会发现网页上其实是“寸土寸金”的(如图,就是我们以前的一个项目的真实截图)。很多地方(特别是表格内部)的空间是及其宝贵的。如何尽量在不出现滚动条的情况下把那么多东西塞到页面上真的会让你很伤脑筋。注意:我是说尽量不要出现滚动条,而不是说不能出现滚动条。为什么要尽量不要出现滚动条?现在你就打开163,然后把滚动条拖到最下面,看看里面的东西,自问一下,你是否关注过那些最下面的东西?随着页面的“加长”,越靠近页面底部的内容,将越不容易引起浏览者的关注。 而横向滚动条我们的项目是严禁出现的,因为滚动横向滚动条不符合用户的操作习惯。不过我也曾见过例外的,以前看过一个横着看的网站,所有的页面都只出现横向滚动条,而不出现竖向滚动条,不过,那是一个张扬个性的个人网站,所以倒也无妨。不过商业性的网站,还是不要玩个性的好。横向和竖向滚动条同时出现的情况,绝对是禁止出现的,那是对浏览者的挑战。尽量不出现滚动条,项目内容却很多,那要怎么办呢?好在Asp.net Ajax Control Toolkit提供了一系列的可以让我们节省大量空间的控件。它们通过“隐”(即隐藏,平时不显示,关键时刻用到的时候才显示出来)、“折”(即折叠,平时龟缩很小,用到时可以方便地展开以展现内容)的方式保卫了我们网页上的大量空间。“隐”“折”,读音和含义都有点像“忍者”,所以这次的副标题就叫做“忍者”专辑吧。(又一个标题党诞生了-_-b…)下面就让我们稍稍地介绍三个(其实还有很多类似的控件,这里只列举其三)。

10:DropDown
“隐”系列的浅池卧龙,加上你的想象力,此控件必将给与你惊喜。下面是个小例子,仅仅是抛块砖。当文本框内需要(或者必须)填写一些已经存在于数据库中的数据时,让用户选择,而不是让用户按键盘自己去打字,不仅可以提高用户的体验度,也能有效的避免因用户而造成的错误。我的这个例子中,只要文本框获得焦点就会立即弹出一个列表(数据量较大的时候,可以加上检索功能),供用户选择,这样就有效的避免了因输入错误的名字造成的错误,个人感觉是中不错的做法。来看它的属性,官方网站文档提供的较少,我做了一些补充。
1. TargetControlID - The ID of the control which needs a drop-down.【目标控件】
2. DropDownControlID - The ID of the control which will be displayed as the dropdown.【欲下拉出现的控件】

补充几个:
3. DropArrowBackColor-下拉箭头背景颜色
4. DropArrowImageUrl-下拉箭头图片url
5. DropArrowWidth – 下拉箭头宽度(但是我测试发现无效,高人指点一下)
6. HighlightBackColor –高亮背景颜色
7. HighlightBorderColor – 高亮边框颜色不要单单的去设置DropArrowImageUrl,你会发现结果一定会让你失望。因为它所谓的箭头图片,就是那个5×5像素的居中的小黑点。只能居中的显示小的图片完全限制了设计。我们有必要对此进行修改。但是它没有提供这样的属性让你去修改箭头图片的显示位置。所以我们只能自己去解决。如何解决还是要从最终显示结构去分析,但是不得不承认,这个DOM让我很纳闷,完全不能理解当初设计它的高人的想法。
那4个div竟然是用来充当4个边的。而且这个四个边从样式来看好像只是用来表现HighlightBorderColor的。这让我有点不太理解。真正有用的是ajax__dropdown_arrow_wrapper 样式class(它的名称是固定的)。先看看它的默认样式:
.ajax__dropdown_arrow_wrapper  {    LEFT: 50%;POSITION: absolute;TOP: 50%}
正是left:50%和top:50% 使得它们只能居中显示。只要修改DropArrowImageUrl的值,然后再适当的修改left和top后的值就可以让图片较为理想的显示。下面是参考样式。注意前面的那个#form1是为了提高我们的样式的优先级,这点是必须的,否则样式优先级太低,会不起作用。
#form1 .ajax__dropdown_arrow_wrappe1r  {    LEFT: 50%;    POSITION: absolute;    TOP: 4px; }
显示效果如下,之所以panel有很大的向右偏移量,是因为我设置了panel的padding-left。



11.CollapsiblePanel
“折”系列的小可爱。别让她的一大片属性所迷惑,其实这个真的算是一个很温柔的控件啦。温柔到你可以随意地调教她,它的外观完全掌握在你的手里。你可以像“画”html页面一样制作它,因为它本身并没有外观,所谓只有“神”而没有“形”,所有的呈现都基于那些目标控件的设计。同时它的最终展现的DOM也很单纯。下面是它那容易让人生畏的属性:
1. TargetControlID - the Panel to operate expand and collapse.【目标控件,推荐Panel】
2. CollapsedSize - The size of the target, in pixels, when it is in the collapsed state.【展开时的尺寸】
3. ExpandedSize - The size of the target, in pixels, when it is in the opened state.【收缩时仍然露出来的尺寸】
4. Collapsed - Specifies that the object should initially be collapsed or expanded. Set this to match your initial size. In this case, we initially set the panel to a height of 0 to match the CollapsedSize property, so when the page first renders, we don't see the panel expanded.【初始状态是否展开】
5. AutoCollapse - True to automatically collapse when the mouse is moved off the panel.【鼠标移上去是否自动收缩】
6. AutoExpand - True to automatically expand when the mouse is moved over the panel.【鼠标移上去是否自动展开】
7. ScrollContents - True to add a scrollbar if the contents are larger than the panel itself. False to just clip the contents.【是否包含滚动条】
8. ExpandControlID/CollapseControlID - The controls that will expand or collapse the panel on a click, respectively. If these values are the same, the panel will automatically toggle its state on each click.【引发展开/收缩事件的目标控件】
9. TextLabelID - The ID of a label control where the "status text" for the panel will be placed. The panel will replace the internal HTML of this control (e.g. any HTML between the tags).【说明状态的Label控件】
10. CollapsedText - The text to show in the control specified by TextLabelID when the panel is collapsed. This text is also used as the alternate text of the image if ImageControlID is set.【收缩时显示的文言】
11. ExpandedText - The text to show in the control specified by TextLabelID when the panel is opened. This text is also used as the alternate text of the image if ImageControlID is set.【展开时显示的文言】
12. ImageControlID - The ID of an Image control where an icon indicating the collapsed status of the panel will be placed. The extender will replace the source of this Image with the CollapsedImage and ExpandedImage urls as appropriate. If the ExpandedText or CollapsedText properties are set, they are used as the alternate text for the image.【用来说明状态的Image控件】
13. CollapsedImage - The path to an image used by ImageControlID when the panel is collapsed【收缩时显示的图片】
14. ExpandedImage - The path to an image used by ImageControlID when the panel is expanded【展开时显示的图片】
15. ExpandDirection - can be "Vertical" or "Horizontal" to determine whether the panel expands top-to-bottom or left-to-right.【展开方向,竖向or横向】
这个控件没有什么好说的,外观的掌控完全在乎那些目标控件的设计,只给个图片,看着是不是很熟悉?模拟winXP资源管理器左侧的。呵呵~


12.HoverMenu
“隐”系列的王者。直译是浮动菜单,但是它的作用可不仅仅是用来浮出菜单,结合你的想象,它能带你走的更远。下面的例子模拟展示了它在web游戏方面的应用(没有客户端,基于B/S的网络游戏,随着网络带宽的发展和一些好的游戏创意的出现必将在未来的网络游戏市场上占有一席之地),此例子仅为抛砖,请勿较真。
先来看看属性:
1. TargetControlID - The control that the extender is targeting. When the mouse cursor is over this control, the hover menu popup will be displayed.【目标控件】
2. PopupControlID - The ID of the control to display when mouse is over the target control. In this case, it's just a simple panel with two links:【弹出的控件】
3. HoverCssClass - The CSS class to apply to the target when the hover menu popup is visible.【弹出控件后原来目标控件的样式,注意:它不会继承原来目标控件的样式,而是直接覆盖。】
4. PopupPostion - Where the popup should be positioned relative to the target control. Can be Left (Default), Right, Top, Bottom, Center.【弹出位置】
5. OffsetX/OffsetY - The number of pixels to offset the Popup from it's default position, as specified by PopupPosition. So if you want it to popup to the left of the target and have a 5px space between the popup and the target, the value should be "-5".【X/Y坐标偏移量】
6. PopDelay - The time delay from when the mouse enters the target to when the popup is shown, in milliseconds. Default is 100.【弹出/缩回的时间延迟,单位是毫秒,默认是100毫秒】
这个控件有比DropDown更自由的弹出位置可以设置,DropDown看名字就知道——只能在下方弹出.,而且还提供了X/Y坐标偏移量属性,所以你可以将这个控件在页面的任意位置上弹出。再加上提供了HoverCssClass属性,可以用来设置弹出浮动控件以后目标控件的样式。所以这个HoverMenu真的要比DropDown友好很多。推荐使用。东西比较简单,关键就是看你的想象力和设计能力。不多说,直接贴个图:


其实Asp.net Ajax Control Toolkit还有很多“忍者”控件,我以后还会以其他角度去讲解它们。今天便不多说了。欲知后事如何,且听下回分解。

上周请假了3天,回来发现工作积了一大堆,所以直到今天才放出这第4回。真是对不住各位关注此系列的朋友了。因为一些特殊的原因,我要尽快赶回大量的工作,还要超前的完成一部分。所以,第5回可能要稍微延迟2天放出。只能说声抱歉,并感谢各位一如既往的对本系列的关注,谢谢。

keyword:ajax HoverMenu,ajax CollapsiblePanel,ajax DropDown,asp.net ajax,ajax教程,ajax基础教程,ajax技术,ajax.net,asp ajax,ajax设计,ajax网页设计,ajax表现
 
源码下载地址: https://pan.quark.cn/s/a4b39357ea24 谷歌公司设计了一款无费用且具备开源特性的网络浏览器,名为Chrome,因其卓越的速度、稳定性和安全性而广受赞誉。该浏览器运用了前沿的Web渲染引擎Blink以及JavaScript引擎V8,旨在保障网页载入与脚本运行的卓越效能。为应对无网络环境下的Chrome安装需求,特别准备了离线安装包。此压缩文件内含32位与64位两种规格的Chrome浏览器离线安装方案,具体文件名分别为"chromedev_x64-v68.0.3423.2.exe"与"chromedev_x86-v68.0.3423.2.exe"。在文件命名中,"x64"标识64本,适用于64位操作系统平台,而"x86"则对应32位本,适配32位操作系统。文件名中的"v68.0.3423.2"代表Chrome的一个特定本号,各本可能涵盖安全补丁、性能改进或新增功能。与32位Chrome相比,64本具备如下长处:能够处理更多内存容量,从而提升多任务作业能力;针对现代硬件的优化使其运行更为迅猛;64本更具备高级别的安全防护,能更周全地抵御恶意软件的侵袭。尽管如此,32位本对于仍在使用32位操作系统的用户,或是在系统资源需求不高的场景下,依然适用。在部署Chrome浏览器时,用户需依据其个人计算机的操作系统平台,挑选匹配的本进行安装。通过双击相应的.exe文件,安装流程将自动启动,一般包含接受使用许可、确定安装路径及构建桌面快捷方式等环节。若在安装阶段遭遇难题,可参照提示信息或联系技术支援获取协助,同时该压缩文件发布者亦表明欢迎用户以留言形式反映问题。Chrome浏览器的主要特质涵盖:直的用户界面设计...
内容概要:本文围绕直驱式永磁同步电机(PMSM)矢量控制系统的建模与仿真展开研究,基于Simulink平台构建了完整的控制系统仿真模型,涵盖了电机本体数学建模、三相/两相坐标变换(Clarke/Park变换)、磁场定向控制(FOC)、电流环与速度环双闭环PID控制策略、空间矢量脉宽调制(SVPWM)技术以及转速调节器设计等核心技术环节。通过仿真实验验证了该控制策略在动态响应速度、稳态运行精度及抗负载扰动能力方面的优良性能,充分体现了矢量控制在实现电机高性能调速中的优势,为永磁同步电机在工业驱动、新能源汽车和高端装备制造等领域的实际应用提供了可靠的理论依据与技术支撑。; 适合人群:具备电机学、电力电子技术和自动控制原理基础知识的电气工程、自动化、机电一体化等相关专业的研究生、高校教师、科研人员,以及从事电机驱动系统、新能源汽车电驱、工业自动化设备研发的工程技术人员。; 使用场景及目标:①深入理解永磁同步电机矢量控制的基本原理与实现机制;②掌握在Simulink中搭建高精度电机控制系统仿真模型的方法与技巧;③为电机控制算法的设计、优化与参数整定提供高效的仿真验证平台;④服务于高校课程设计、毕业课题研究、科研项目前期验证及企业产品开发中的控制策略测试。; 阅读建议:建议结合经典电机控制教材进行对照学习,重点关注各功能模块间的信号流向、反馈机制与参数耦合关系,动手复现并调试仿真模型,通过改变PI参数、负载条件和给定转速等方式察系统响应,从而深入掌握控制策略的内在逻辑与性能优化方法。
代码下载地址: https://pan.quark.cn/s/a4b39357ea24 Java学习路线(鱼皮)是一个全面且循序渐进的Java开发技能培养方案,该路线从基础入门直至高级应用,致力于协助学习者高效地掌握Java编程的全部核心内容。此学习路线的独特之处在于其新颖性、系统性、实践性、开放性以及社区馈与持续迭代更新。其核心构成涵盖了预备阶段、Java入门知识、Java进阶技能、Java高级技术、Java框架应用以及Java项目实践等多个学习模块,每个模块均整合了相应的知识点、学习策略与资源指引。在预备阶段,学习者需配置在线编程环境、选择笔记工具、熟悉Markdown文档编写等基本技能,为编程学习奠定基础。在Java入门阶段,学习者应重点掌握Java编程的基础理论、开发环境配置、IDEA集成开发环境的使用、项目创建与执行调试、界面设置及插件配置等关键技能。在Java入门阶段,学习者还须深入理解Java基础语法、数据结构类型、程序流程控制、数组操作、面向对象编程、方法重载机制、封装原则、继承特性、多态表现、抽象类的概念、接口定义、枚举类型、常用类库、字符串处理、日期时间管理、集合框架、泛型编程、注解应用、异常处理机制、多线程技术、IO流操作、反射机制等核心知识点。在Java进阶阶段,学习者需要重点学习Java 8的更新特性、Stream API的应用、Lambda表达式的使用、新的日期时间处理API以及接口默认方法的实现。在Java高级阶段,学习者需要掌握Java框架的应用、Spring Boot框架的搭建、Spring Cloud微服务架构的实施等高级技术。在Java项目阶段,学习者需要学习Java项目开发的全过程操作,包括项目架构设计、项目编码实现、项...
内容概要:本文围绕基于Matlab代码实现的卫星信号传播模拟研究,系统阐述了卫星信号在大气层及空间环境中传播特性的数值仿真方法。研究通过建立精确的数学模型,对信号衰减、传输延迟、多普勒效应以及噪声干扰等关键物理现象进行建模与仿真分析,全面还原实际通信场景下的信号行为特征。该仿真体系不仅可用于验证通信链路设计的可靠性,还能为星地链路预算、抗干扰策略优化及接收机算法开发提供理论依据和技术支持。; 适合人群:具备一定Matlab编程能力、通信原理基础和电磁波传播知识的高校研究生、科研机构研究人员及从事卫星通信系统设计与仿真的工程技术人员。; 使用场景及目标:①用于高校课程中卫星通信相关理论的教学演示与实验教学;②支撑航天通信项目的链路性能评估与系统参数优化;③为新型调制解调、纠错编码和信号增强算法的研发提供可验证的仿真平台;④辅助科研人员开展低轨星座、深空探测等前沿领域的通信建模研究; 阅读建议:建议读者结合经典通信理论教材,深入理解各模块的物理意义,动手运行并调试提供的Matlab代码,尝试调整轨道参数、大气模型和噪声水平等变量,察其对信号质量的影响,进而拓展模型以适配不同卫星轨道类型或复杂多径环境,提升综合仿真与分析能力。
打开链接下载源码: https://pan.quark.cn/s/a4b39357ea24 ### 常用电流电压检测电路:详细解析与实际应用 在电力电子技术范畴内,电流电压检测电路是达成各类电力设备控制与监测的关键构成部分。本资料将详细研究几种普遍应用的电流电压检测电路,意图辅助读者深入掌握其运行机制、设计要素及实际运用环境。 #### 一、电网电压同步检测电路 电网电压同步检测电路主要致力于完成电力系统中逆变器输出与电网电压之间的精确同步。以DSTATCOM(配电网静态同步补偿装置)为例,其系统硬件主要由主路、控制路以及检测与驱动路三大部分组成。其中,检测电路负责采集3路交流电压、6路交流电流、2路直流电压和2路直流电流,同时还包括电网电压同步信号。 1. **常用电网电压同步检测电路及其特性** - **RC滤波模块**:用于滤除电网电压中的高频杂波,保障电压检测信号的纯净度。例如,在图2-2中,由电阻R5(1KΩ)和电容C4(15pF)构成的RC滤波装置,其时间常数远小于系统输出频率,有效降低了系统与电网的相位偏差。 - **过零比较单元**:如LM311,用于识别电网电压的过零时刻,从而实现电压信号的同步处理。过零比较单元输出的方波信号可用于控制单元的同步操作。 - **上拉限幅与非门电路**:用于强化驱动能力,确保信号符合微控制单元的输入标准,如TMS320LF2407的输入信号标准。 2. **脉宽调制PWM同步信号电路**:基于ADMC401芯片的PWM发生装置,通过PWMSYNC引脚提供与开关频率同步的PWM同步脉冲信号。此电路结合光电隔离元件TLP521与D触发器MC14538,实现精确的过零时刻检测与信号同步。 3. **缓冲与比较单元电路...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值