使用AJAX扩展器自定义控件

输入控件在任何应用程序中都必不可少,但是当 Web 应用程序代表您组织的形象时,它们显得尤为重要。这些控件可能是用户评判您的应用程序甚至您组织可信度的主要衡量标准。

在 Windows 和 Web 编程中,用户界面都是通过创建控件来构建的。但是可用的控件并不是特别丰富。Windows 窗体的输入控件仍以 Win32 控件为基础,Web 控件则比 HTML <INPUT> 标记的包装好不了多少。很明显,我们需要更好的输入控件,尤其对编写 ASP.NET AJAX 应用程序的开发人员更是如此,因为这些控件非常依赖客户端用户的交互。

在这个分为两部分的系列文章中,我将主要介绍 ASP.NET 3.5 的输入功能,但是我要说明的大部分信息也适用于安装了 ASP.NET AJAX Extensions 的 ASP.NET 2.0。我将讨论如何通过使用 AJAX 控件工具包(在此我称之为 ACT)中提供的某些 JavaScript 驱动的行为,增强 ASP.NET 输入控件功能。本月我将介绍一组基本的 ACT 输入扩展;下个月我将深入介绍更多的高级功能。

入门

ACT 是 Web 控件的共享源码库,您可从 codeplex.com/AtlasControlToolkit 下载它。ACT 通过预定义的脚本代码块扩展了现有 ASP.NET 服务器控件。ACT 扩展器可应用于内置和自定义的 ASP.NET 控件。

从技术层面来讲,ACT 组件在控件(例如 TextBox 和 Panel)之上添加了额外的 JavaScript 层。因此,对 AJAX 的使用并不是必需的。但是,ACT 组件的实现在很大程度上依赖于 Microsoft AJAX Library 中的 JavaScript 功能,以及 ASP.NET AJAX Extensions 服务器运行时。

ACT 授权规范位于 asp.net/ajax/ajaxcontroltoolkit。CodePlex 上的 ACT 项目页有两个专栏下载项:带 AJAX Extensions 的 ASP.NET 2.0 和 ASP.NET 3.5(请参阅 codeplex.com/AtlasControlToolkit/Release/ProjectReleases.aspx)。

要将 ACT 用于 ASP.NET 应用程序中,您需要在项目中引用该程序集,然后将 ACT 注册到使用它的任何页面。对每个页面注册 ACT 的方法是使用 @Register 指令并指定任意前缀,例如:

<%@ Register Assembly="AjaxControlToolkit"
        Namespace="AjaxControlToolkit"
        TagPrefix="act" %>

此外,您也可以为应用程序中的所有页在 web.config 文件中注册该库。以下是要使用的配置脚本:

<pages>
   <controls>
    <add tagPrefix="act"
       namespace="AjaxControlToolkit"
       assembly=" AjaxControlToolkit" />
   </controls>
 </pages>

ACT 控件不会自动出现在 Visual Studio 工具箱中,但是添加新的选项卡非常容易,如图 1 所示。

Figure 1ACT in Visual Studio 2008

时间: 2024-11-05 18:13:43

使用AJAX扩展器自定义控件的相关文章

使用AJAX扩展器自定义控件(第2部分)

目录 掩码编辑功能的必要性 MaskedEdit 扩展器 验证掩码输入 文本框自动完成 构建自动完成 Web 服务 设置 AutoComplete 扩展器的样式 对列表进行渐进式搜索 弹出式上下文菜单 结束语 上个月我讨论了如何使用 AJAX 控件扩展器来增强文本框和按钮等 ASP.NET 输入控件.这个月我将使用 Microsoft .NET Framework 3.5 和最新版本的 ASP.NET(撰写本文时,其版本为 Beta 2)来添加掩码编辑和自动完成等更多高级功能.此外,我将使用可用

面向.NET开发人员的Ajax 技术平台策略(1)

ajax|策略|技术平台 在这里我将试图考察一下目前.NET平台的下的Ajax框架,我也试图从中总结出来一种方法,使得你可以在众多基于.NET平台的Ajax框架和工具包中找到你所合适的一种,同时也希望你在考察.预研和使用这些流行的这些Ajax-NET 的框架时,做得理性和有的放矢. 我想,文章的方法会给目前使用Ajax的.NET用户带来帮助,从而提高你在.NET平台下使用Ajax的体验.为什么这么说,因为最近我的一个客户(应该是一些客户)的研发主管对我说,我们对Atlas 非常兴趣,想了解更多一

面向.NET开发人员的Ajax 技术平台策略

ajax|策略|技术平台 在这里我将试图考察一下目前.NET平台的下的Ajax框架,我也试图从中总结出来一种方法,使得你可以在众多基于.NET平台的Ajax框架和工具包中找到你所合适的一种,同时也希望你在考察.预研和使用这些流行的这些Ajax-NET 的框架时,做得理性和有的放矢. 我想,文章的方法会给目前使用Ajax的.NET用户带来帮助,从而提高你在.NET平台下使用Ajax的体验.为什么这么说,因为最近我的一个客户(应该是一些客户)的研发主管对我说,我们对Atlas 非常兴趣,想了解更多一

基于ASP.NET AJAX技术开发在线RSS阅读器(上篇)

[注]本文测试环境:Windows XP专业版+Visual Studio 2005+整套ASP.NET AJAX框架+ASP.NET RSS Toolkit+SQL Server 2005. 一.RSS技术简介 RSS是一种描述和同步网站内容的XML格式,已经成为越来越流行的网站内容订阅技术.通过这种技术,网站可以极大地提高广大网站用户和网站数据之间的数据交互. RSS阅读软件可以分为桌面离线式和在线式两大类.有了这种工具,用户只需要添加初始其所关注的RSS网址,以后系统会自动更新相关内容,网

探讨微软ASP.NET AJAX控件开发技术(客户端)

本系列文章将通过具体的实例从客户端和服务端两个角度全面探讨ASP.NET AJAX框架中的控件(Control)开发所涉及的技术. 一. 简介 如今,ASP.NET AJAX框架以其与ASP.NET 2.0系统的有机整合与完全面向对象的客户端JavaScript组件模型正在吸引着越来越多的Web开发人员.此外,这个框架还为基于ASP.NET 2.0平台的AJAX Web开发提供了一揽子方案(尽管尚嫌稚气). 首先,我们来回忆ASP.NET AJAX框架设计的主要目标:其一,扩展现有的ASP.NE

探讨微软ASP.NET AJAX控件开发技术(服务器端)

一.简介 到目前为止,我们已经讨论了开发Ajax控件所涉及的客户端相关技术.现在,让我们来讨论此过程中与服务器端相关的一些技术. 需要说明的是,在[客户端]篇中我们的举例本质上仅是使用ASP.NET AJAX框架提供的面向对象JavaScript技术来增强了一个客户端图像组件,而没有明显涉及到AJAX技术(除了ScriptManager在后台以AJAX方式下载并管理客户端脚本代码外).所以,这个例子是简单的,仅凭客户端相关知识就可以使用这个增强控件. 但是,在实际开发中,当要增强的客户端控件涉及

用.Net实现基于CSS的AJAX开发(2)

       好了,完成删除,,那么所有对应这个业务的删除都可以由命名为dgBigclassmanage的某一元素通过绑定delbtn样式来执行删   除(当然,这样不科学,不过是DEMO嘛,如果是实际你可以在QueryString里多传一个参数,在到AjaxDelRow派发后再用进行二次派发,然后以这个参数做标识就完美了)由于麻烦,,有兴趣的自己做吧.. 呵呵.      这个样式只依赖TABLE元素,所以DATAGRID.DATALIST.自己做的TABLE,自定义控件只要最后生成TABLE

Asp.net动态加载用户自定义控件,并转换成HTML代码

Ajax现在已经是相当流行的技术了,Ajax不仅是想服务器端发送消息,更重要的是无刷新的重载页面. 如果页面单纯的使用js来创建,要写大量的代码,而且不直观. 在asp.net中,其实我们可以创建用户自定义控件,通过Ajax请求返回用户自定义控件HTML代码. public static string RangerUsControl(string controlName) { StringBuilder build = new StringBuilder(); HtmlTextWriter ht

ASP.NET AJAX入门系列(1):概述

经常关注我的Blog的朋友可能注意到了,在我Blog的左边系列文章中,已经移除了对Atlas学习手记系列文章的推荐,因为随着ASP.NET AJAX 1.0 Beta版的发布,它们已经不再适用,为了不继续误导广大朋友,所以不再作为推荐系列文章,如果有需要参考的朋友,可以直接到随笔分类中查看. ASP.NET AJAX Beta改动如此之大,鉴于又没有很好的中文参考资料,所以决定最近开始写作ASP.NET AJAX入门系列,这个系列我会把ASP.NET AJAX当作一个全新的东西去对待,不再考虑以