1、WEB应用程序设计(ASP.NET),安徽机电职业技术学院信息工程系汪 学 文wxwAspDotN2008年10月,2,第3课 ASP.NET服务器端控件,本课要点:了解和使用各种服务器控件使用文本框、列表框等标准控件输入数据使用验证控件确保输入数据的正确性使用文件上传控件、日历控件等Rich控件了解导航控件和用户控件的使用本课示例程序位于课件文件夹下的“AspDotNetLesson3_4”文件夹下,请将其配置成虚拟目录“AspDotNetLesson3_4”.,3,3.4 高级控件(Rich控件),本节主要介绍以下控件:文件上传控件FileUpLoad广告控件AdRotator日历控件Ca
2、lendar显示不同页面视图的MultiView控件显示向导的Wizard控件,4,3.4.1 文件上传控件(FileUpLoad),FileUpLoad控件用于向Web应用程序上传文件。文件上传后,可以把文件保存在任意位置,或者存放在数据库中。(P53),5,FileUpLoad控件主要属性方法,FileUpLoad控件支持下列属性(不完全列表)Enable:是否禁用(几乎所有控件都有该属性)FileBytes:以字节数组形式获取文件上传内容(需要将文件保存到数据库时要用到它)FileContent:以流方式获得上传文件内容。FileName:用于获得上传文件的名字。HasFile:有上传文
3、件时返回true。PostedFile:用于获得包装成HttpPostedFile对象的上传文件。FileUpLoad控件支持以下方法:Focus:设为焦点控件SaveAs:用于把上传文件保存到文件系统中。,6,FileUpLoad控件主要属性方法,HttpPostedFile类具有下列属性(不完全列表)ContentLength:获得上传文件字节大小ContentType:获得上传文件的MIME类型,如text/html,image/jpg等FileName:获得上传文件的名字InputStream:把上传文件当成流来获取HttpPostedFile类还支持以下方法:SaveAs:把上传文件
4、保存到文件系统中,7,构建图片上传示例,标签lblImageFile,文件上传控件upImage,按钮btnAdd,数据列表控件(DataList)dlstImages,DataList控件中使用了模板列和数据绑定,Default.aspx,8,构建图片上传示例,protected void btnAdd_Click(object sender, EventArgs e) if (upImage.HasFile) if (CheckFileType(upImage.FileName) string filePath = /Images/ + upImage.FileName; upImage.
5、SaveAs(MapPath(filePath); ,bool CheckFileType(string fileName) string ext = Path.GetExtension(fileName); switch (ext.ToLower() case .gif: return true; case .png: return true; case .jpg: return true; case .jpeg: return true; default: return false; ,添加图片,判断上传文件类型,注意:由于涉及到文件操作,需要引入System.IO命名空间,9,构建图片上
6、传示例,protected void Page_PreRender(object sender, EventArgs e) string upFolder = MapPath(/Images/); DirectoryInfo dir = new DirectoryInfo(upFolder); dlstImages.DataSource = dir.GetFiles(); dlstImages.DataBind(); ,绑定数据以显示图片,10,上传大文件,默认情况下,不能提交大于大于4MB的表单。如果需要上传大文件,需要修改Web.Config文件:,上传不超过10MB文件,使用文件缓存,大
7、小 为100KB,11,3.4.2 广告控件(AdRotator),AdRotator控件用于在页面中随机显示不同的广告。(P58)Adrotator控件使用XML文件保存广告信息,也可以数据库表中存储广告。使用该控件的AdCreated事件,可以统计广告显示的频度和点击的频度。,AdRotatorXML.aspx,12,3.4.2 广告控件(AdRotator),Adrotator控件支持下列属性:AdvertisementFile:指定包含广告列表的XML文件,一般将该文件放于网站的App_Data文件夹中。AlternateTextField:指定用于显示成广告替代文本的字段,默认值使用
8、AlternateText属性。DataSource:指定绑定的数据源DataMember:绑定数据源中某个数据成员ImageUrlField:指定用于广告图片URL的字段,默认值是ImageUrl。KeyWordField:用简单的关键字过滤广告NavigateUrlField:指定广告链接的字段,默认值是NavigateUrlTarget:用户点击广告时,在哪个目标框架打开窗口(如_blank),13,3.4.2 广告控件(AdRotator), /Images/ahcme.jpg 300 50 http:/ 安徽机电职业技术学院 50 banner . ,Adrotator配置文件格式(
9、.XML文件):,14,3.4.2 广告控件(AdRotator),Adrotator配置文件各字段含义:,15,3.4.3 日历控件(Calendar),Calendar控件用来显示日历,可以把日历当作日期选择器,或用来显示预定事件的列表。(P60),ShowCalendar.aspx,16,3.4.3 日历控件(Calendar),Calendar控件的主要属性:(属性太多,拣重要的几个)SelectionMode:如何选择日期,有Day,DayWeek, DayWeekMonth和NoneTodayDate:指定当前日期SelectedDate:设置或获取选中的日期SelectedDat
10、es:设置或获取多个选中的日期Calendar控件支持以下事件:DayRender:在呈现每一天时激发SelectionChanged:选中某天、某周或某月时激发VisibleMonthChanged:点击上月、下月链接时激发Calendar控件支持与数据库绑定,可以创建日程记事等程序。,17,3.4.4 显示不同的页面视图的MultiView控件,MultiView控件用于隐藏和显示页面的不同区域。在需要创建显示卡式页面时,这个控件很有用。在需要把一个长的表单分成多个表单时,它也非常有用。MultiView控件与View控件联合使用,他们都属于容器控件。参见教材P64.,ShowMultiV
11、iew.aspx,18,3.4.4 显示不同的页面视图的MultiView控件,MultiView控件支持下列属性:ActiveViewIndex:通过索引选择显示哪个View控件。Views:用于获取MultiView控件中包含的View控件集合。MultiView控件还支持下列方法:GetActiveView():用于获取选中的View控件SetActiveView():用于设置哪个View控件选中Multiview控件支持下列事件:ActiveViewChanged:选中新的View控件时引发View控件不支持任何专门的属性和方法。它主要用作其它控件的容器。不过,View控件支持下列2个
12、事件:Activate:当该View控件成为MultiView控件的选中View时引发。Deactivate:当其它View控件成不MultiView控件的选中View时引发。,19,3.4.4 显示不同的页面视图的MultiView控件,使用与Menu控件关联的MultiView控件,可以创建选项卡式界面(要做得漂亮的话,需要使用些CSS)。,MultiViewTabs.aspx,20,3.4.5 显示向导Wizard控件,Wizard控件就像MultiView控件一样,能用来把一个大的表单分成多个子表单。(P66)Wizard控件由4部分组成:标题(Header)侧栏(SideBar)向导步骤集合(WizardSteps)导航按钮(NavigationButton),21,3.4.5 显示向导Wizard控件,WizardSteps集合之StepType属性:Auto:由其在集合中的位置决定如何呈现。Start:不会出现上一步按钮Step:同时有上一步和下一步按钮Finish:显示上一步和完成按钮Complete:不出现任何按钮,22,实验6 Rich控件,完成实验6实验报告综合使用MultiView控件、FileUpLoad控件、Adrotator控件和Calendar控件,完成如下图所示界面。也可以与本示例不同,但必须综合使用以上四种控件。,
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。