技术要点 ASP.NET AJAX Control Toolkit中的SlideShow控件能够与Image控件创建起关联,轻易实现出一个具备导航与自动播放功能的页面相册,其属性及说明如表所示。 表 SlideShow控件属性及说明 属性 | 说明 | TargetControlID | 要与"相册播放"扩展器创建起关联性,以便通过它来展示相片Image控件ID | SlideShowServicePath | 提供相片的web服务的位置路径与文件名称。如果使用的是页面方法,则不需要 | AutoPlay | 是否在页面加载完成之后,自动播放相片 | ImageDescriptionLabelID | 用来显示目前所显示之相片说明的Label控件ID | NextButtonID | 用来播放下一张相处的按钮控件ID | PlayButtonText | 播放按钮上的文字 | StopButtonText | 停止播放上的文字 | PreviousButtonID | 用来播放上一张相片的按钮控件ID | PlayButtonID | 开始与停止播放相片按钮的控件ID | Loop | 是否允许循环播放 | PlayInterval | 自动播放时,每张相片的间隔时间(单位:毫秒)默认是3000 |
实现过程 (1)新建一个AJAX网站,将其命名为11,默认主页为Default.aspx。 (2)在Default.aspx中存在一个ScriptManager控件,然后添加一个一个UpdatePanel控件其中ScriptManager控件用于管理页面中的AJAX控件,UpdatePanel控件用于实现局部更新。 (3)在UpdatePanel控件中添加一个SlideShow控件、一个Image控件和3个ImageButtom控件,其中SlideShow控件实现播放照片功能,Image控件显示照片,ImageButtom控件控制播放照片。 (4)创建Web服务,命名为PhotoService.asmx,该服务用于提供相片路径与相片描述。代码如下: using System; using System.Web; using System.Collections; using System.Web.Services; using System.Web.Services.Protocols; //引入新的命名空间 using AjaxControlToolkit; /// <summary> /// PhotoService 的摘要说明 /// </summary> [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] //添加服务脚本 [System.Web.Script.Services.ScriptService()] public class PhotoService : System.Web.Services.WebService { public PhotoService () { //如果使用设计的组件,请取消注释以下行 //InitializeComponent(); } [WebMethod] public Slide[] GetPhoto() { ///创建照片数组 return new AjaxControlToolkit.Slide[] { new AjaxControlToolkit.Slide("Photo/1.jpg",".NET开发部到此一游!",string.Empty), new AjaxControlToolkit.Slide("Photo/2.jpg","哦耶!得来特写!",string.Empty), new AjaxControlToolkit.Slide("Photo/3.jpg","千手观音,没整明白",string.Empty), new AjaxControlToolkit.Slide("Photo/4.jpg","坐在这里真爽",string.Empty), new AjaxControlToolkit.Slide("Photo/5.jpg","刚睡醒,还没进入拍摄状态?",string.Empty), new AjaxControlToolkit.Slide("Photo/6.jpg","可爱的一笑!",string.Empty) }; } } |
(5)SlideShow控件的属性代码如下: <cc1:SlideShowExtender ID="SlideShowExtender1" runat="server" TargetControlID="Image1" AutoPlay="true" ImageDescriptionLabelID="lblShow" Loop="true" NextButtonID="btnNext" PreviousButtonID="btnPrev" PlayButtonID="btnPlay" PlayInterval="3000" PlayButtonText="自动播放" StopButtonText="停止自动播放" SlideShowServicePath="PhotoService.asmx" SlideShowServiceMethod="GetPhoto" ImageTitleLabelID="lblTitle"> </cc1:SlideShowExtender> |
|