Task #3 使用ASP.NET服务器控件创建页面.

Slides:



Advertisements
Similar presentations
計算機程式及實習 Computer Program Design and Experiment) 期末報告 ppt 南台科技大學機械工程系 姓名 : 蔡中銘 學號 :4A 授課老師 : 謝慶存大帥哥.
Advertisements

Web 开发基础 第二章 表格与页面布局. 回顾 Internet 和 万维网 网页的工作原理 网页的基本结构 标记及其属性 段落标记,图片标记,超级链接标记 相对路径,绝对路径,物理路径.
HyperText Markup Language
計算機程式及實習 期末報告 題目:商店結帳系統
ASP.NET 網頁製作教本 -- 從基本語法學起
第5章 HTML 標籤介紹.
佛山科学技术学院 第7章 HTML Internet及多媒体应用.
第8讲 HTML与PHP基础 静态网页 vs. 动态网页.
Web图片搜索引擎设计 ——基于文本的图片信息提取.
网页 设计与制作.
第8章 CSS基础知识 【学习目标】 对于一个网页设计者来说,对HTML语言一定不感到陌生,因为它是网页制作的基础,但是如果希望网页能够美观、大方,并且升级维护方便,那么仅仅知道HTML还是不够的,还需要了解CSS。了解CSS基础知识,可以为后面的学习打下基础。 本章主要内容包括: 为什么在网页中加入CSS。
XML 第05讲 使用CSS显示XML.
第五单元课1-3 层叠样式表.
模块1 网页设计基础 实训1 体验HTML文档 1.1 网页基础知识 1.2 网站配色方案 1.3 网站设计常用软件
第4章 JavaScript脚本语言基础 4.1 JavaScript简介 4.2 JavaScript语法基础
第3章 JavaScript语言基础.
CSS – 進階 IDIC.
第 5 章 流程控制 (一): 條件分支.
《ASP.NET数据库网站设计教程(C#版)》
第6章 HTML控件和Web服务器控件 本章讲述的主要内容 6.1 ASP.NET控件概述 6.2 标准服务器端控件 6.3 数据验证控件
使用HTML製作個人網頁 柴惠敏 台灣大學 物理治療學系.
第二部分 HTML语言控制 本次课的主要内容: 1、认识网页文件的结构 2、HEAD、TITLE、BODY等基本标记符的使用
国开学习网/形考模块
第6章 网页图像处理 通过本章学习,应该掌握以下内容: 能够选择合适的网页颜色 了解网页图像的基本格式 掌握使用网页图像的要点
RWD網頁設計實務 李欣螢 以誠研發有限公司.
《计算机网络技术》 asp.net 程序设计 文本类控件 笪静.
第二章 網際網路網頁的設計.
Ch03 VB.NET語法建立ASP.NET 網頁程式設計.
第四章 样式表CSS CSS技术是一种格式化网页的标准方式,它通过设置CSS属性债周页元素获得各种不同效果。本章共分9个实例,主要内容包括的基础知识、CSS创建与导入、CSS的语法结构、常用CSS的分类、CSS的使用原则等内容。
第8章 样式表.
《ASP.NET数据库网站设计教程(C#版)》
《ASP.NET数据库网站设计教程(C#版)》
Web Part與 個人化網頁製作 資策會教育訓練處 王寧疆 MCAD.NET/MCSD.NET/MCT
計算機概論 請老師填入姓名主講 課本:數位傳真2012 博碩文化出版發行.
程式設計實作.
Chapter 4 基本伺服器控制項.
Chapter 5 進階伺服器控制項.
在 Web 应用中,导航是非常重要的。ASP
Ch.13 HTML網頁實作.
CSS排版:盒子模式 靜宜大學 資管系 楊子青.
8 网页制作基础知识 赵国庆 博士 北京师范大学教育技术学院
讲课人:王璞 浙江工商职业技术学院.
第13章 網站的使用者與會員管理 13-1 網站的使用者與會員管理 13-2 ASP.NET的表單基礎驗證
第15章 豐富控制項.
ASP.NET 網頁製作教本 – 從基本語法學起
第5章 .NET框架类 5.
第4章 使用验证控件.
視窗程式設計 (Windows Programming)
HTML & CSS.
第3章 ASP.NET程序设计基础 3.
主讲:陶建平 华中科技大学网络与计算中心
武汉纺织大学传媒学院 cm.wtu.edu.cn
网页设计与制作教程第5版 机械工业出版社同名教材 配套电子教案.
第二章Java基本程序设计.
补充:c#语言基础.
C# 基本語法、變數.
1 Session对象的特性 Session 状态对象 Session 对象常用的方法有: Session 对象常用的属性有:
第4章 ASP.NET服务器控件.
Controls.
向导控件的样式 当创建了一个向导控件时,系统会自动生成向导控件的 HTML 代码,示例代码如下所示。
CSS排版:盒子模式 靜宜大學 資管系 楊子青.
<编程达人入门课程> 本节内容 为什么要使用变量? 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ:
第二章 Java语法基础.
#include <iostream.h>
第二章 Java基本语法 讲师:复凡.
CSS基礎 靜宜大學 資管系 楊子青.
第5章 Div+CSS布局技术 经济管理学院.
C# 匿名委派 + Lambda + Func 建國科技大學 資管系 饒瑞佶.
第二章 Java基本语法 讲师:复凡.
教师:李金双 网页制作 教师:李金双
Presentation transcript:

Task #3 使用ASP.NET服务器控件创建页面

学习目标 了解ASP.NET服务器控件的属性和方法 掌握ASP.NET服务器控件的使用 掌握服务器控件中验证控件的使用 Web Programming 了解ASP.NET服务器控件的属性和方法 掌握ASP.NET服务器控件的使用 掌握服务器控件中验证控件的使用 项目:学生信息管理系统登录&注册页面

任务1:简单语法的综合应用 任务描述: 学习目标: Web Programming 任务描述: 建立一个简单的学生成绩计算器,当用户在网页中输入《计算机数学》和《计算机应用基础》两门课程的成绩时,即可计算总成绩和平均成绩,效果如图所示: 学习目标: 熟悉C#基本用法,熟悉变量的定义、类型转换及混合运算 掌握ASP.NET基本控件的使用(文本框、按钮、标签)

任务1:简单语法的综合应用 解决步骤1:新建窗体网页 Web Programming 解决步骤1:新建窗体网页 新建窗体文件3-1.apsx,添加两个文本框、一个按钮、一个标签,并输入相应的提示文字。

提示 <style type="text/css"> .style1 { width: 50%; } Web Programming <style type="text/css"> .style1 { width: 50%; } </style> <table align="center" class="style1"> <tr><!- -第2行- -> <td colspan="3" style="text-align: center“> <hr></td> </tr>

提示 <tr><!- -第6行- -> Web Programming <tr><!- -第6行- -> <td colspan="3" style="text-align: center"> <asp:Panel ID=“Panel2” runat=“server” Visible=“False”>总分是:<asp:Label runat=“server” Text=“Label”></asp:Label> 元</asp:Panel> </td> </tr> <tr> ><!- -第7行- -> <td colspan=“3” style=“text-align: center“> <asp:Panel ID=”Panel1” runat=“server” Visible=“false”>平均分是:<asp:Label runat=“server” Text=“Label”></asp:Label> 元</asp:Panel>

任务1:简单语法的综合应用 解决步骤2:设计后台程序 Web Programming 解决步骤2:设计后台程序 protected void Button1_Click(object sender, EventArgs e) { int sum = 0; int math = Convert.ToInt32(TextBox1.Text); int com = Convert.ToInt32(TextBox2.Text); sum = math + com; Panel2.Visible = true; lbl_sum.Text = sum.ToString(); }

任务1:简单语法的综合应用 解决步骤2:设计后台程序 Web Programming 解决步骤2:设计后台程序 protected void Button2_Click(object sender, EventArgs e) { float avg = 0; float math = Convert.ToInt32(TextBox1.Text); float com = Convert.ToInt32(TextBox2.Text); avg = (math + com) / 2; Panel1.Visible = true; lbl_avg.Text = avg.ToString(); }

拓展知识:C#基础知识(参考PPT) Web Programming C#的数据类型和表达式 变量和常量 常见数据类型 类型转换 操作符

课堂练习1 设计一个简单的算术计算器程序,通过设计理解常用Web服务器端控件的使用方法和顺序结构程序设计的特点。 Web Programming 设计一个简单的算术计算器程序,通过设计理解常用Web服务器端控件的使用方法和顺序结构程序设计的特点。

任务2:流程控制程序综合应用 任务描述: 学习目标: Web Programming 任务描述: 设计一个用户登录页面,限制尝试登录次数为3次,若用户尝试登录3次不对,就不能登录,并提示登录次数过多 学习目标: 掌握分支、循环等流程控制语句的使用方法

任务2:流程控制程序综合应用 Web Programming 解决步骤1:建立窗体文件

提示 <table class=“style1”><!- - 用户名、密码- -> Web Programming <table class=“style1”><!- - 用户名、密码- -> <div class="style2"> <b>用户登录</b><br /><hr /><br /> <tr> <td>密码:</td> <td><asp:TextBox ID="TextBox2" runat="server" TextMode="Password"></asp:TextBox></td> </tr> .style1 { width:50%; } .style2 margin:10px;

任务2:流程控制程序综合应用 解决步骤2:编写后台程序 Web Programming 解决步骤2:编写后台程序 public partial class WebForm2 : System.Web.UI.Page { static int i = 0;//定义一个用于计数的静态全局变量,页面执行时会一直存在 protected void Page_Load(object sender, EventArgs e) if (!IsPostBack)//第一次运行网页时要运行的程序 Label1.Text = "你有三次登录机会"; }

任务2:流程控制程序综合应用 string s = ""; int iWeekDay; Web Programming string s = ""; int iWeekDay; iWeekDay = (int)DateTime.Now.DayOfWeek;//将今天是星期几转换成整数 switch (iWeekDay) { case 1: s = “一"; break; case 2: s = “二"; case 3: s = "三"; case 4: s = "四";

任务2:流程控制程序综合应用 case 5: s = "五"; break; case 6: s = "六"; default: Web Programming case 5: s = "五"; break; case 6: s = "六"; default: s = "七"; } Response.Write("今天是:"+DateTime.Now+"星期"+s);

任务2:流程控制程序综合应用 Web Programming protected void Button1_Click(object sender, EventArgs e) { if (TextBox1.Text == "Tom" && TextBox2.Text == "123") Label1.Text = "登录成功"; } else if (i < 3) i = i + 1; Label1.Text = "用户名或密码不对"; Label1.Text = "登录已经超过三次"+i.ToString(); Button1.Visible = false;

拓展知识:C#流程控制(参考PPT) Web Programming 分支语句 循环语句

课堂练习2 Web Programming 完善学生成绩计算,要求检查用户输入的成绩是否在0-100分之间,如果不在,能够提示用户

任务3:Web服务器基本控件 任务描述: 学习目标: Web Programming 任务描述: 创建学生信息管理系统网站的注册页面,用户可以通过文本框输入用户名、密码、真实姓名等相关信息,通过单选按钮、下拉框、复选框等控件设置性别、专业班级、兴趣爱好等信息。 学习目标: 掌握基本Web服务器控件的用法

任务3:Web服务器基本控件 解决步骤1:创建窗体页面 Web Programming 解决步骤1:创建窗体页面 <asp:RadioButton ID="RadioButton1" runat="server" Checked="True" GroupName=“sex” Text=“男" /> <asp:RadioButton ID=“RadioButton2” runat=“server” GroupName=“sex” Text=“女" />

任务3:Web服务器基本控件 解决步骤2:编写后台代码 Web Programming 解决步骤2:编写后台代码 protected void Button1_Click(object sender, EventArgs e) { string result; result = “注册结果是:<br />学号:” + TextBox1.Text+“<br />姓名:"+TextBox2.Text; if (RadioButton1.Checked) result += “<br />性别:" + RadioButton1.Text; } Else result += “<br />性别:" + RadioButton2.Text;

任务3:Web服务器基本控件 解决步骤2:编写后台代码 Web Programming 解决步骤2:编写后台代码 result += “<br />专业班级:”+DropDownList1.SelectedValue+“<br />兴趣爱好:"; for (int i = 0; i < CheckBoxList1.Items.Count; i++) { if (CheckBoxList1.Items[i].Selected) result += CheckBoxList1.Items[i].Value + "  "; } Label1.Text = result;

课堂练习3-1 Web Programming 设计一个个人情况调查程序,程序启动后显示如图所示的页面。用户在填写了姓名、选择了性别、喜爱的歌手、居住城市、个人爱好后单击【提交】按钮后,屏幕显示用户填写或选择的数据信息。若用户没有填写姓名而直接单击【提交】按钮,屏幕上显示出错提示信息;若用户没有选择任何“爱好”项目,单击【提交】按钮后,爱好栏中显示“真可惜,你没有任何爱好!”。

课堂练习3-2 Web Programming

拓展知识:其它选择控件 RadioButtonList控件: CheckBox控件: Web Programming RadioButtonList控件: result=RadioButtonList1.SelectedValue; CheckBox控件: if(CheckBox1.Checked) { result+=CheckBox1.Text; }

课堂练习3-2 设计网上教学系统的在线测试模块,要求至少包括单选题、多选题、判断题,考试结束后可以在线给出成绩(参考页面) Web Programming 设计网上教学系统的在线测试模块,要求至少包括单选题、多选题、判断题,考试结束后可以在线给出成绩(参考页面)

拓展知识:其它选择控件 ListBox控件: 多选: Web Programming ListBox控件: for(int i=0;i<ListBox1.Items[i].Count;i++) { if(ListBox1.Items[i].Selected) result+=ListBox1.Items[i].Value; } 多选: <asp:ListBox ID="ListBox1" runat="server" SelectionMode="Multiple“></asp:ListBox>

课堂练习3-3 设计选修课系统 提示: ListBox2.Items.Add(ListBox1.Items[i]); Web Programming 设计选修课系统 提示: ListBox2.Items.Add(ListBox1.Items[i]); ListBox1.Items.Remove(ListBox1.Items[i]);

拓展知识:其它常用按钮控件 ImageButton控件: 图片作为按钮 Web Programming ImageButton控件: 图片作为按钮 mess.Text=“坐标:” + e.x + “, ” + e.y;

拓展知识:其它常用按钮控件 LinkButton控件与HyperLink控件: 属性 值 ImageUrl Web Programming LinkButton控件与HyperLink控件: 属性 值 ImageUrl /i/eg_banner_w3school.gif NavigateUrl http://www.w3school.com.cn" Text="Visit W3School! Target "_blank

Label1.Text="您点击了 LinkButton 控件" 拓展知识:其它常用按钮控件 Web Programming LinkButton控件与HyperLink控件: Label1.Text="您点击了 LinkButton 控件"

课堂练习3-4 Web Programming 设计网上教学系统的登录页面,单击“登录”按钮时,可以显示用户输入的用户名和密码(参考页面)

课堂练习3-5 使用Image控件、ImageButton控件、HyperLink控件制作一个网上课堂学习模块 Web Programming 使用Image控件、ImageButton控件、HyperLink控件制作一个网上课堂学习模块 ImageButton控件 Image控件 HyperLink控件

任务4:图像控件及文件上传控件 任务描述: 学习目标: Web Programming 任务描述: 在任务3的基础上添加用户上传图片的功能,当用户单击“浏览”按钮时,即可选择一张照片,单击“注册”按钮时可以上传照片到当前指定站点的images文件夹下,同时在下方显示该图片,如果文件不是图片类型或没有选择图片文件,将给出错误提示 学习目标: 掌握图像显示控件和文件上传控件的用法

任务4:图像控件及文件上传控件 Web Programming 解决步骤1:窗体文件的界面设计 Pannel: Visble=false;

任务4:图像控件及文件上传控件 解决步骤2:编写后台程序 //以下是文件上传的代码 Web Programming 解决步骤2:编写后台程序 //以下是文件上传的代码 if (FileUpload1.HasFile)//是否有文件要上传 { string strType = FileUpload1.PostedFile.ContentType; //判断上传文件的类型是否是常见图像 if (strType == "image/bmp" || strType == "image/pjpeg" || strType == "image/gif" || strType == "image/png") //生成一个日期和时间组合成的文件名 string strFileName = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString();

任务4:图像控件及文件上传控件 //上传文件重命名为时间和日期的组合,不易重名,可防止上传文件互相覆盖 Web Programming //上传文件重命名为时间和日期的组合,不易重名,可防止上传文件互相覆盖 FileUpload1.SaveAs(Server.MapPath("images/" + strFileName + ".jpg")); Panel1.Visible = true; Image1.ImageUrl = "images/" + strFileName + ".jpg"; } Else { Response.Write("<script>alert('文件类型不对')</script>");

任务4:图像控件及文件上传控件 Web Programming Else { Response.Write("<script>alert('请选择你的照片')</script>"); }

拓展知识:ImageMap控件 Web Programming 作用:实现在图片上定义热点(HotSpot)区域的功能。 通过单击这些热点区域,用户可以向服务器提交信息,或者链接到到某个URL位址。

拓展知识:ImageMap控件 ImageMap Web Programming ImageMap 语法:<asp:ImageMap ID="控件名称" runat="server" ImageUrl="图片位置" HotSpotMode="热区模式" > <asp:RectangleHotSpot hotspotmode="热区模式" NavigateUrl="单击该热区时候的导航URL" alternatetext="鼠标放上去的替代文字" PostBackValue ="提交值" bottom="距离底部位置" right="距离右侧位置"> </asp:RectangleHotSpot> … </asp:ImageMap>

Click:对热点区域的单击操作,通常在HotSpotMode为PostBack时用到 拓展知识:ImageMap控件 Web Programming ImageMap HotSpotMode:热点模式,枚举类型 HotSpots:该属性对应着System.Web.UI.WebControls.HotSpot对象集合。它之下有 CircleHotSpot(圆形热区)、RectangleHotSpot(方形热区)和PolygonHotSpot(多边形热区)三个子类。 Click:对热点区域的单击操作,通常在HotSpotMode为PostBack时用到

【例3-12】 Image和ImageMap应用举例,效果 如下。上面是Image,下面是ImageMap。当用户 Web Programming ImageMap(教材) 【例3-12】 Image和ImageMap应用举例,效果 如下。上面是Image,下面是ImageMap。当用户 指向不同的热区时候,有不同的替代文字出现,当单 击不同的热区的时候跳转到不同的页面。

拓展知识:Table控件 Web Programming Table Table控件是用来在Web窗体页上创建通用表格的。每个Table控件包含一个或者多个TableRow对象。每个TableRow对象包含一个或者多个TableCell对象。每个TableCell对象包含其他的HTML或者服务器控件。 创建Table控件包含两个步骤:添加一个Table控件,然后分别添加行和单元格。 如果是在设计时候添加行、列来创建一张静态表,最好使用前面讲过的Html布局控件Table,如果是运行时通过代码来向表中添加行和列,即需要动态生成一张表时,采用Web标准服务器控件中的Table。

拓展知识:Table控件 Table 向表中动态添加行和列,语法如下所示: 添加行 Web Programming Table 向表中动态添加行和列,语法如下所示: 添加行 TableRow tRow = new TableRow(); Table1.Rows.Add(tRow); 向行添加列 TableCell tCell=new TableCell(); tRow.Cells.Add(tCell);

拓展知识:Table控件 Table 向单元格TableCell中添加内容, Web Programming Table 向单元格TableCell中添加内容, 可以直接是文本,也可以是html代码,也可以是控件。以添加一个HyperLink为例。 HyperLink hy1 = new HyperLink(); hy1.Text = "第二届委员会代表注册拉"; hy1.NavigateUrl = "~/bbb.aspx"; tCell.Controls.Add(hy1); tRow.Cells.Add(tCell); 如果只是添加文本,直接设置tCell.Text=“文本”即可。

【例3-13】动态生成表 新闻展示页面原理。效果如图所示. 拓展知识:Table控件 Web Programming Table(教材) 【例3-13】动态生成表 新闻展示页面原理。效果如图所示.

课堂练习4 Web Programming 设计网上教学系统的添加作业模块,可在线布置作业,包括作业题目、作业要求,同时可以上传作业附件

课堂练习4 设计网上教学系统的添加作业模块,可在线布置作业,包括作业题目、所在章节、作业要求,同时可以上传作业附件 Web Programming 设计网上教学系统的添加作业模块,可在线布置作业,包括作业题目、所在章节、作业要求,同时可以上传作业附件

拓展知识:日历控件 Calendar: 属性: SelectionMode:显示模式 Web Programming Calendar: 属性: SelectionMode:显示模式 NextPrevFormat:选择上一月下一月显示的格式 编程: Switch(Calendar1.SelectedDates.Count) { Case 0: Label1.Text=“没有日期被选择”; Break; Case 1: Label1.Text=“被选择的日期是”+Calendar1.SelectedDate.ToshortDateString();

拓展知识:日历控件 } Case 7: Default: Web Programming Case 7: Label1.Text=“被选择的星期开始于”+Calendar1.SelectedDate.ToshortDateString(); Break; Default: Label1.Text=“被选择的月份开始于”+Calendar1.SelectedDate.ToshortDateString(); }

拓展知识:广告控件 AdRotator: 创建XML文件ad.xml(添加新项——数据模板——XML文件) Web Programming AdRotator: 创建XML文件ad.xml(添加新项——数据模板——XML文件) <Advertisements> <Ad> <ImageUrl>img1.gif</ImageUrl> <NavigateUrl>http://www.gdaib.edu.cn</NavigateUrl> <AlternateText>Ad for GDAIB</AlternateText> <Impressions>100</Impressions> </Ad> <ImageUrl>img2.gif</ImageUrl> <NavigateUrl>http://www.baidu.cn</NavigateUrl> <AlternateText>Ad for Baidu</AlternateText> <Impressions>200</Impressions> </Advertisements>

拓展知识:广告控件 AdRotator: 将AdRotator控件的Advertisement属性设置为:ad.xml Web Programming AdRotator: 将AdRotator控件的Advertisement属性设置为:ad.xml

任务5:导航控件 任务描述: 学习目标: 设计学生信息管理系统的导航,包括水平导航栏和树状导航栏 Web Programming 任务描述: 设计学生信息管理系统的导航,包括水平导航栏和树状导航栏 学习目标: 掌握Menu控件与TreeView控件的使用方法

任务5:导航控件 解决步骤1:创建母版页Site1.Master 添加新项——母版页 <div> Web Programming 解决步骤1:创建母版页Site1.Master 添加新项——母版页 <div> <table class="style1"> <tr> <td class="one"> </td> <td> <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server"> </asp:ContentPlaceHolder> </tr> </table>

任务5:导航控件 <style type="text/css"> .style1 { width: 100%; } .one Web Programming <style type="text/css"> .style1 { width: 100%; } .one width:20%; border-right:2px solid grey; </style>

任务5:导航控件 解决步骤2:使用Menu控件创建水平导航栏 Web Programming 解决步骤2:使用Menu控件创建水平导航栏 <asp:Menu ID="Menu1" runat="server" Font-Names="楷体" Font-Size="Medium“ Orientation="Horizontal"> <Items> <asp:MenuItem Text="教师档案" Value="教师档案" NavigateUrl="~/file.aspx"></asp:MenuItem> <asp:MenuItem Text="新生报到" Value="新生报到"></asp:MenuItem> <asp:MenuItem Text="学生资料" Value="学生资料"></asp:MenuItem> </Items> </asp:Menu>

任务5:导航控件 解决步骤3:使用TreeView控件创建树状导航栏 Web Programming 解决步骤3:使用TreeView控件创建树状导航栏 <asp:TreeView ID="TreeView1" runat="server" Font-Names="楷体" Font-Size="Medium"> <Nodes> <asp:TreeNode SelectAction="Expand" Text="班级管理" Value="班级管理“ NavigateUrl="~/class.aspx"> <asp:TreeNode Text="学院班级汇总" Value="学院班级汇总"></asp:TreeNode> <asp:TreeNode Text="班级主任管理" Value="班级主任管理"></asp:TreeNode> <asp:TreeNode Text="学院班级评比" Value="学院班级评比"></asp:TreeNode> </asp:TreeNode> </Nodes> </asp:TreeView>

课堂练习5 设计远程教学网站的学习指导子页面,要求利用Menu控件设计水平导航栏,利用TreeView控件设计树状导航栏 Web Programming 设计远程教学网站的学习指导子页面,要求利用Menu控件设计水平导航栏,利用TreeView控件设计树状导航栏

任务6:登录控件 Web Programming 任务描述: 设计学生管理信息系统的管理员登录页面,要求只有从登录页面验证过的管理员才能进入管理页面,假如有浏览者直接由浏览器的地址栏输入网页名称来打开网页,除了禁止其进入管理系统外,应显示信息告知应先登录才能进入管理系统 学习目标: 掌握LoginView、Login等控件的使用

任务6:登录控件 解决步骤1:创建管理员账号 拓展知识: 项目——ASP.NET配置 Web Programming 解决步骤1:创建管理员账号 项目——ASP.NET配置 安全——创建用户——输入用户名(admin)、密码(adminadmin)、邮箱(admin@qq.com) 拓展知识: 为了避免密码被黑客破解,密码默认规则为:至少7个字符,最好至少包括一个非文字或数字的字符

任务6:登录控件 解决步骤2:创建LoginView控件 <div> Web Programming 解决步骤2:创建LoginView控件 <div> <img alt="" class="style1" src="images/Banner.jpg" /><br /> <asp:LoginView ID="LoginView1" runat="server"> <AnonymousTemplate> <asp:Image ID=“Image1” runat=“server” ImageAlign=“AbsMiddle“ ImageUrl=”~/images/icon_stop.gif” /> 请您先执行<br /><asp:LoginStatus ID=“LoginStatus1” runat=“server” />操作! </AnonymousTemplate> </asp:LoginView> </div> <style type="text/css"> .style1 { width: 415px; height: 52px; } </style>

任务6:登录控件 解决步骤3:修改Web.Config文件 解决步骤4:创建登录页面 Web Programming 解决步骤3:修改Web.Config文件 <authentication mode="Forms"> <forms loginUrl="exp6-1.aspx" timeout="2880" /> </authentication> 解决步骤4:创建登录页面

课堂练习6 创建在线教学系统的登录页面,登录后可以根据不同的用户身份出现不同的页面。用户身份包括:教师、学生、管理员。 Web Programming 创建在线教学系统的登录页面,登录后可以根据不同的用户身份出现不同的页面。用户身份包括:教师、学生、管理员。

任务7:验证控件 任务描述: 学习目标: 当用户在注册网页中输入的信息部符合指定要求时,要给出一定的错误提示信息,减少意外输入错误。 Web Programming 任务描述: 当用户在注册网页中输入的信息部符合指定要求时,要给出一定的错误提示信息,减少意外输入错误。 学习目标: 使用数据验证控件,熟悉数据验证控件的常见属性

任务7:验证控件 Web Programming 解决步骤1:设计窗体文件

任务7:验证控件 解决步骤2:设置验证控件的属性 Web Programming 解决步骤2:设置验证控件的属性 <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server“ ErrorMessage="学号不能为空" ControlToValidate="TextBox1"> </asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server“ ErrorMessage="真实姓名不能为空" ControlToValidate="TextBox2">

任务7:验证控件 解决步骤2:设置验证控件的属性 Web Programming 解决步骤2:设置验证控件的属性 <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server“ ErrorMessage="密码不能为空" ControlToValidate="TextBox3"> </asp:RequiredFieldValidator> <asp:CompareValidator ID="CompareValidator1" runat="server“ ErrorMessage="确认密码与密码不一致" ControlToCompare="TextBox3“ ControlToValidate="TextBox4"> </asp:CompareValidator>

任务7:验证控件 解决步骤2:设置验证控件的属性 Web Programming 解决步骤2:设置验证控件的属性 <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server“ ErrorMessage="手机号码格式不正确" ControlToValidate="TextBox6“ ValidationExpression="\d{11}"> </asp:RegularExpressionValidator> <asp:RegularExpressionValidator ID="RegularExpressionValidator2" runat="server“ ErrorMessage="Email格式不正确" ControlToValidate="TextBox5“ ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*">

拓展知识:CompareValidator控件的其它应用 Web Programming 与其它数据类型的数据进行比较: Operator=GreatThan/Less/NotEqual Type=Integer/Double ValueToCompare=需要比较的值 类型检测: Operator="DataTypeCheck" Type="Date"

拓展知识:ValidationExpression的格式符号 Web Programming []:定义可以接受的字符 {}:定义必须输入的字符数 |:表示“或” ():选择性符号,可用可不用 \:在特殊符号前必须加 ^:表示不接受 .:表示任意字符 *:表示任意组合 [A-Z]:表示任意大写字母 \d:表示任意一个数字

数字开头后接一个大写字母:\d[A-Z]* 只能输入1个数字:\d{1} 只能输入n个数字:\d{n} 只能输入至少n个数字:\d{n,} 拓展知识:常用的正则表达式 Web Programming 数字开头后接一个大写字母:\d[A-Z]* 只能输入1个数字:\d{1} 只能输入n个数字:\d{n} 只能输入至少n个数字:\d{n,} 只能输入m到n个数字:\d{m,n} 只能输入数字:[0-9] 只能输入0开始的数字:0\d 只能输入n个字符:.{n}(注意:汉字算1个字符) 只能输入英文字符:[A-Za-z] 只能输入大写英文字符:[A-Z]

只能输入英文字符+数字:[A-Za-z0-9] 只能输入英文字符+数字+下划线:\w 验证汉字:[\u4e00-\u9fa5]{0,} 拓展知识:常用的正则表达式 Web Programming 只能输入小写英文字符:[a-z] 只能输入英文字符+数字:[A-Za-z0-9] 只能输入英文字符+数字+下划线:\w 验证汉字:[\u4e00-\u9fa5]{0,} 验证QQ号:[0-9]{5,9} 验证身份证号:[1-9]([0-9]{16}|[0-9]{13})[xX0-9] 验证手机号(13|15|18)[0-9]{9} 验证护照(P\d{7})|G\d{8})

练习 住址: 北京电话号码: .{1, }(县|市).{1, }(市|镇|乡|区).{1, }(路|街道).{1, }号 Web Programming 住址: .{1, }(县|市).{1, }(市|镇|乡|区).{1, }(路|街道).{1, }号 北京电话号码: 010-[0-9]{8}

拓展知识:RangeValidator控件 Web Programming 范围验证控件: MaximumValue:比较的最大值 MinimumValue:比较的最小值 Type:比较类型

拓展知识:ValidationSummary控件 Web Programming 使用ValidationSummary控件对网页进行综合验证 属性: HeaderText:标题 DisplayMode:显示方式 ShowMessageBox:是否由对话框显示验证结果 ShowSummary:是否在页面显示验证结果

拓展知识:CustomValidator控件 Web Programming 使用CustomValidator控件验证用户的输入是否为偶数 属性: ControlToValidate ErrorMessage 事件: ServerValidate

CustomValidator1_ServerValidate事件代码: int num=Int32.Parse(args.Value); Web Programming CustomValidator1_ServerValidate事件代码: int num=Int32.Parse(args.Value); if(num%2==0) { args.IsValid=true; return; } args.IsValid=false; Button1_Click事件代码: if(Page.IsValid) Label1.Text="输入数据是:"+TextBox1.Text;

Web Programming

课堂练习7 Web Programming

课堂练习 7 Web Programming 要求: 1、账号、密码不能为空 2、用户帐号为空或包含非字母、数字、下划线等非法字符时,或者长度不足4位或超过20位时,给出出错提示,并停止登录验证。 3、密码不足6位或超过20位长度时,给出出错提示。 4、前后两次输入的密码必须一致。 5、手机号码只能是以1开头的,长度为11位数字的数字串。 6、邮箱符合邮箱名称的规则。 7、单击“注册”时可以使用对话框将所有错误信息显示出来

任务8:自定义控件 Web Programming 教材:例3-26 创建一个根据关键字检索新闻的用户控件search.ascx,效果如图3-30所示(本例模板是例3-15的制作结果,可下载),并将其放入news.aspx中。

任务8:自定义控件 Web Programming 【例3-27】完善例3-26,使得该搜索用户控件可以适用于两类场合:1.在普通用户浏览新闻页面,只要输入关键字,就把含有该关键字的新闻列出(存到它的一个属性中);2.在管理员用户场合,只要输入关键字,就把含有该关键字的且是该管理员发表过的新闻列出(存到它的一个属性中)

课堂练习8 Web Programming 使用用户控件设计一个网页中常见的导航栏。使用用户控件来实现页面导航栏制作的好处在于,站点中所有页面都可以方便地调用该用户控件,使所有页面具有相同风格的外观。 用户自定义控件 主Web页面 中的标签控件

Assignment #2:设计博客系统的登录&注册页面 Web Programming 要求: 设计博客系统的登录和注册页面,要求具有验证功能;能在线显示用户输入的内容;用户分权限登录。 时间: 为期一周。 上交方式: 将网页文档保存在文件夹中,文件夹名为你的姓名。通过网络教学系统上传。

Thank You !