2024年3月13日发(作者:)
第13章
使用ASP .NET开发学生
成绩管理系统
通过本章您将学习:
z
z
ASP .NET数据库应用程序的开发过程
开发学生成绩管理系统,包括登录页面、母版页面、主菜单页面、成绩查询页面、
成绩维护页面等
ASP .NET动态网页设计案例教程(Visual Basic .NET版)
学习入门
(1)
学生成绩管理系统提供成绩查询和管理的功能。
(2)
学生使用该系统查询成绩。
(3)
教师使用该系统查询学生成绩。
(4)
教师使用该系统修改学生成绩。
(5)
教师使用该系统增加学生成绩。
(6)
教师使用该系统删除学生成绩。
(7)
学生成绩管理系统
由下列
ASP .NET Web
页面组成。
表13-1 学生成绩管理系统页面组成
文
件
名
称
用户登录页面
母版页
主菜单页面
学生查询页面
教师查询学生成绩页面
教师修改学生成绩页面
教师增加学生成绩页面
教师删除学生成绩页面
无权访问提示页面
说
明
(8)
该系统所使用的数据信息保存在
SQL Server
数据库
WebJWDB
中,有数据表
Users
、
Exam
。
Users
数据表存放的是用户安全信息
(
用户
ID
、密码、身份
)
,
Exam
数据表存放的是
学生的成绩信息。
任务
1
:创建登录主页面
操作任务:
学生成绩管理系统的默认主页是登录页面。根据不同的登录用户
(
有教师和学生两种身
份
)
显示不同的操作页面。运行效果如图
13.1
所示。
(1)
当以教师身份
(
例如,用户
ID
:
T2003001
,密码:
password)
登录时,教师不仅可以
查询学生成绩,还可以对学生成绩进行维护,包括修改、增加、删除操作。
(2)
当以学生身份
(
例如,用户
ID
:
S2007101
,密码:
password)
登录时,学生可以查询
成绩,但不可以对成绩进行维护。
242
第13章 使用ASP .NET开发学生成绩管理系统
图13.1 运行效果
解决方案:
该
页面使用如表
13
-
2
所示的
的页面控件完成指定的任务。
表13-2 的页面控件及属性说明
属
性
ID
TextBox txtName
TextBox txtPsw
TextMode:Password
类
型
说
明
姓名文本框
密码文本框
身份选择
登录按钮
取消按钮
验证用户名
不能为空
验证密码不
能为空
输入信息错
误提示
显示图片
控制Web控
件布局
DropDownList DropDownList1 Items
:学生、教师
Button btnLoad Text
:登录
Text:取消
Button btnCancel
CausesValidation:False
RequiredFieldValidator
RequiredFieldValidator
RequiredFieldValidator1
RequiredFieldValidator2
ControlToValidate:txtName
ErrorMessage:*用户名不能为空
ControlToValidate:txtPsw
ErrorMessage:*密码不能为空
ForeColor:Red
Label Label1
去掉文本内容的设置
Image Image1 ImageUrl
:~/picture/
Style:HEIGT:11px;
Table Table1
BACKGROUND-COLOR: #99ccff
操作步骤:
(1)
使用数据库脚本文件自动创建完整的成绩管理数据库
WebJWDB
和数据表
Users
、
Exam
的信息,并自动插入成批的数据表基本数据
(
具体步骤参看第
8
章练习
2)
。
(2)
运行
Microsoft Visual Studio 2005
应用程序。
(3)
新建
ASP .NET Web
网站。选择菜单命令【文件】→【新建】→【网站】,选择【
ASP .NET
网站】,【位置】处保持默认设置【文件系统】;【语言】处保持默认设置
Visual Basic
;单击
【浏览】按钮,在【选择位置】对话框中选择
C:ASPNETChapter13
文件夹;单击【确定】
按钮,将
C:ASPNETChapter13
创建为
Web
网站。
243
ASP .NET动态网页设计案例教程(Visual Basic .NET版)
(4)
新建文件夹
picture
。点击
C:ASPNETChapter13
网站,通过菜单命令【网站】→【新
建文件夹】,重命名为
picture
。通过右击
picture
,执行相应快捷菜单中的【添加现有项】命
令,添加图片
。
(
涉及的素材可到附录所指明的网址去下载。
)
(5)
创建默认主页。先删除系统自动创建的
。通过菜单命令【文件】→【新
建文件】,或者单击工具栏上的
(
添加新项
)
按钮,选择【
Web
窗体】模板,在【名称】处
输入文件的名称:
;取消选择【将代码放在单独的文件中】复选框,在
C:ASPNETChapter16
网站中新建一个名为
的学生成绩管理系统默认主页,利
用
Page_Load
事件函数直接跳转到登录页面,代码如下。
Protected Sub Page_Load(ByVal sender As Object, ByVal e As rgs)
ct("")
End Sub
(6)
新建登录页面。选择菜单命令【文件】→【新建文件】,或者单击工具栏上的
(
添
加新项
)
按钮,打开【添加新项】对话框,选择【
Web
窗体】模板;在【名称】处输入文件
的名称:
,单击【添加】按钮,在
C:ASPNETChapter13
网站中创建一个名为
的
ASP .NET
页面。
(7)
设计登录页面。选择【设计】选项卡,首先选择【布局】菜单下的【插入表】命
令插入表格,如图
13.2
所示设置单元格背景。然后从【标准】工具箱中用鼠标拖动如表
13
-
2
所示的控件到设计页面的相应位置,并依照如表
13
-
2
所示的内容在【属性】窗口中设置各
控件属性。
页面的设计效果如图
13.2
所示。
图13.2 页面的设计效果
(8)
生成登录页面事件函数。双击【登录】按钮,系统会自动生成一个名为
btnLoad_Click
的
ASP .NET
事件函数,同时打开代码编辑窗口,添加如下粗体阴影语句。
<%@ Page Language="VB" %>
<%@ Import Namespace="" %>
<%@ Import Namespace="" %>
"/TR/xhtml1/DTD/">
244
第13章 使用ASP .NET开发学生成绩管理系统
(9)
保存
和
文件,并运行
文件,观察运行效果。
操作小结:
(1)
数据库中数据表的创建可以在企业管理器中进行,也可以在查询分析器中通过
SQL
语句实现。
(2)
图片可以通过控件
Image
显示,也可直接拖入相应的位置。
(3)
对数据库操作需要引入命名空间:
<%@ Import Namespace="" %>
;
<%@ Import Namespace="" %>
。
(4) d
的使用,
避免了在用户输入错误信息的情况下与服务器进行信息通信。
(5)
用户登录成功时需保存其身份,方便以后对其权限的设置。此例子中是通过
Session
对象实现的。
245
ASP .NET动态网页设计案例教程(Visual Basic .NET版)
练习
1
:完善登录页面的功能
操作任务:
在任务
1
的基础上完成【取消】按钮的事件代码。运行效果如图
13.3(a)
和图
13.3(b)
所示。
(a)
输入信息时的效果
(b)
单击【取消】按钮时的效果
图13.3 取消操作的运行效果
操作步骤:
(1)
打开
ASP .NET Web
网站。选择菜单命令【文件】→【打开】→【网站】,选择
C:ASPNETChapter13
文件夹,打开第
13
章的网站。
(2)
生成事件函数。在解决方案管理器的项目
C:ASPNETChapter13
中双击
。
选择【设计】选项卡,双击【取消】按钮,系统会自动生成一个名为
btnCancel_Click
的
ASP .NET
事件函数,同时打开代码编辑窗口,添加如下粗体阴影语句。
Protected Sub btnCancel_Click(ByVal sender As Object, ByVal e As System.
EventArgs)
= "" '
用户
ID
清空
= "" '
登录密码清空
edIndex = 0 '
默认设置为学生
= "" '
删除错误提示信息
End Sub
(3)
保存并运行程序
,观察运行效果。
操作小结:
(1)
取消输入操作,只需要将输入信息清空即可。
(2)
取消
DropDownList
的用户更改项,只需要将其默认选项索引设置为
0
即可。
(3)
同时需删除错误提示信息框内容。
246
第13章 使用ASP .NET开发学生成绩管理系统
任务
2
:创建母版页
操作任务:
创建母版页
。
解决方案:
该母版页使用如表
13
-
3
所示的母版页控件完成指定的任务。
表13-3 母版页控件及属性说明
类
型
ID
Text
:主菜单
BackColor
:
GhostWhite
Button Button1
CausesValidation
:
False
Text
:本学期成绩
BackColor
:
GhostWhite
Button Button2
CausesValidation
:
False
Text
:查询学生信息
BackColor
:
GhostWhite
Button Button3
CausesValidation
:
False
Text
:修改学生成绩
BackColor
:
GhostWhite
Button Button4
CausesValidation
:
False
Text
:增加学生成绩
BackColor
:
GhostWhite
Button Button5
CausesValidation
:
False
Text
:删除学生成绩
BackColor
:
GhostWhite
Button Button6
CausesValidation
:
False
Text
:退出系统
BackColor
:
GhostWhite
Button Button7
CausesValidation
:
False
ForeColor
:
#33CCFF
Label Label1
Text
:学生成绩查询
ForeColor
:
#33CCFF
Label Label2
Text
:学生成绩管理
NavigateUrl
:
~/
Font-Size
:
X-Large
HyperLink HyperLink1
Text
:主菜单
主菜单链接导航
退出系统导航按钮
教师删除学生成绩
教师增加学生成绩
教师修改学生成绩
教师查询学生成绩
学生查询成绩按钮
主菜单导航按钮
属
性
说
明
显示图片
ImageUrl
:
~/picture/
Image Image1
学生操作权限范围
教师操作权限范围
247
ASP .NET动态网页设计案例教程(Visual Basic .NET版)
续表
类
型
ID
属
性
Font-Size
:
X-Large
Text
:退出系统
LinkButton LinkButton1
CausesValidation
:
False
页脚
BACKGROUND-COLOR
:
lightgreen
退出系统链接导航
说
明
控制布局
(
在样式
ghostwhite
;
Table
导航
BACKGROUND-COLOR
:
中设置相关属性
)
BORDER
:
lightgreen
操作步骤:
(1)
添加图片。在资源管理器的项目中右击文件夹
picture
,选择相应快捷菜单中的【添
加现有项】命令,添加图片
。
(
涉及的素材可到本书所指明的网址去下载。
)
(2)
添加母版页。在解决方案管理器的项目
C:ASPNETChapter13
上右击,选择【添加
新项】命令,在弹出的对话框中选择【母版页】,在【名称】处输入文件的名称:
,取消选中【将代码放在单独的文件中】复选框,单击【添加】按钮。
(3)
母版页界面布局设计。单击【设计】选项卡,切换到【设计】视图。剪切
ContentPlaceHolder
控件,选择菜单命令【布局】→【插入表】,插入
3
行
2
列的表格。合
并第
1
行单元格,合并
2
、
3
行左边单元格,从而分为
4
部分:页眉、页脚、导航、内容模
块。将剪切掉的
ContentPlaceHolder
控件粘贴到内容模块中。然后从【标准】工具箱中用鼠
标拖动如表
13
-
3
中所示的控件到设计页面相应的位置,如图
13.4
所示,并依照如表
13
-
3
所示在【属性】窗口中设置控件的属性。
图13.4 母版页的设计效果
248
第13章 使用ASP .NET开发学生成绩管理系统
(4)
生成事件函数。分别双击【
Button
】按钮和【
LinkButton
】按钮,系统会自动生成
相应的
ASP .NET
事件函数,同时打开代码编辑窗口。分别添加事件的处理代码,如下粗
体阴影语句所示。
(5)
保存文件
。
操作小结:
(1)
母版页可以根据需要设计成多个模块。
(2)
在导航部分的按钮事件中,通过
Session
变量的值进行用户身份的验证,以控制不
250
第13章 使用ASP .NET开发学生成绩管理系统
Session("flag")
的值为
teacher
,
Session("flag")
同用户的访问权限。有
3
种情况:表示教师身份;
的值为
student
,表示学生身份;
Session("flag")
的值为空,表示没有登录,返回到登录页面。
(3)
退出系统时需清空
Session
变量值,使用方法
Abandon()
:
n()
。
(4)
母版页设计的是一组页面的公共部分功能。应用母版页之后,可以通过修改母版
页,实现对一组页面的统一布局和修改。
(5)
母版页创建之后,开发人员可以将主要精力放在内容页具体功能的实现上。
练习
2
:使用母版页创建主菜单页面
操作任务:
利用任务
2
中创建的母版页,设计主菜单页面
,其运行效果如图
13.5
所示。
图13.5 程序运行效果
解决方案:
该
Web
页面使用母版页完成指定的任务。
操作步骤:
(1)
添加
ASP .NET
页面。在解决方案管理器的项目
C:ASPNETChapter13
上右击,选
择【添加新项】命令,在弹出的对话框中选择【
Web
窗体】模板,在【名称】处输入文件
的名称:
,取消选中【将代码放在单独的文件中】复选框,选中【选择母版
页】复选框,单击【添加】按钮。在弹出的【选择母版页】对话框中选择任务
2
中创建的
母版页
,单击【确定】按钮。
(2)
观察
ASP .NET
页面效果。选择【设计】选项卡,切换到【设计】视图观察效果。
(3)
保存并运行
文件,观察运行效果。
251
ASP .NET动态网页设计案例教程(Visual Basic .NET版)
操作小结:
在创建
Web
页面时选中【选择母版页】复选框,即可将母版页应用到此页面。
任务
3
:使用母版页创建学生成绩查询页面
操作任务:
使用母版页设计程序
,实现学生查询个人成绩的功能,其运行效果如
图
13.6
所示。
(a)
登录后的主菜单页面
(b)
单击【本学期成绩】按钮查询成绩
图13.6 程序运行效果
解决方案:
页面使用如表
13
-
4
所示的
的页面控件完成指定的任务。
表13-4 的页面控件及属性说明
属
性
ID
TextBox TextBox1
Button Button1
Text
:查询
ControlToValidate
:
TextBox1
RequiredFieldValidatorRequiredFieldValidator1
ErrorMessage
:
*
请输入学号
ForeColor
:
Red
单击控件智能标记,自动套
用格式:专业版
ForeColor
:
Blue
Label Label1
去掉文本内容
(Text)
的设置
DetailsView DetailsView1
Table Table1
类
型
说
明
【输入学号】文本框
【查询】按钮
验证控件,学号
文本框不能为空
显示查询信息
用于显示提示信息
控制布局
操作步骤:
(1)
添加
ASP .NET
页面。在解决方案管理器的项目
C:ASPNETChapter13
上右击,选
252
第13章 使用ASP .NET开发学生成绩管理系统
择【添加新项】命令,在弹出的对话框中选择【
Web
窗体】,在【名称】处输入文件的名称:
,取消选中【将代码放在单独的文件中】复选框,选中【选择母版页】复选
框,单击【添加】按钮。在弹出的【选择母版页】对话框中,选择任务
2
中创建的母版页
,单击【确定】按钮。
(2)
设计页面。选择【设计】选项卡,在
Content
控件中,首先选择菜单命令【布局】→
【插入表】插入表格,然后从【标准】、【数据】工具箱中用鼠标拖动如表
13
-
4
所示的控件
到设计页面的相应位置,如图
13.7
所示,并依照如表
13
-
4
所示在【属性】窗口中设置控
件的属性。
图13.7 页面设计效果
<%@ Page Language="VB" MasterPageFile="~/" Title="Untitled
Page" %>
<%@ Import Namespace="" %>
<%@ Import Namespace="" %>
(4)
保存并运行
文件。将
设为起始页,测试运行程序并观察运
行效果。
(5)
将
另存为
(
教师查询学生成绩页面
)
。
操作小结:
(1)
应用了母版页的
ASP .NET
页面
称为内容页。内容页的设计只允许在
Content
控件中进行。
(2) DetailsView
控件以列表形式显示一条记录。
(3)
学生成绩查询页面
与教师查询学生成绩页面
功能类
似,只是访问权限不同。
页面只有学生才可以访问,而
页面
是教师才有访问权。
任务
4
:使用母版页创建教师修改学生成绩页面
操作任务:
使用母版页设计程序
,实现教师修改学生成绩的功能。教师登录后,
单击导航模块中的【修改学生成绩】按钮,转到
页面,此页面运行效果
如图
13.8
所示。
254
第13章 使用ASP .NET开发学生成绩管理系统
(a)
输入要修改学生学号,单击【查询】按钮
(b)
单击【编辑】按钮时的效果
(c)
更改文本框中信息后单击【更新】按钮时的效果
图13.8 页面运行效果
解决方案:
页面使用如表
13
-
5
所示的
的页面控件完成指定
的任务。
表13-5 的页面控件及属性说明
属
性
说
明
ID
学号文本框
TextBox TextBox1
Text
:查询
查询按钮
Button Button1
ErrorMessage
:
*
请输入学生的学号验证控件
(
文本框
RequiredFieldValidatorRequiredFieldValidator1
ControlToValidate
:
TextBox1
不允许为空
)
DetailsView DetailsView1
ForeColor
:
Blue
Label Label
去掉文本内容
(Text)
的设置
Table1
、
Table2
、
Table3
Table
显示信息,编辑信息
信息提示
控制布局
类
型
255
ASP .NET动态网页设计案例教程(Visual Basic .NET版)
操作步骤:
(1)
添加
ASP .NET
页面。在解决方案管理器的项目
C:ASPNETChapter13
上右击,选
择【添加新项】命令,在弹出的对话框中选择【
Web
窗体】模板,在【名称】处输入文件
的名称:
,取消选中【将代码放在单独的文件中】复选框,选中【选择
母版页】复选框,单击【添加】按钮。在弹出的【选择母版页】对话框中,选择任务
2
中
创建的母版页
,单击【确定】按钮。
(2)
设计页面。选择【设计】选项卡,在
Content
控件中,首先选择菜单命令【布局】→
【插入表】插入表格,然后从【标准】、【数据】工具箱中用鼠标拖动如表
13
-
5
所示的控件
到设计页面的相应位置,如图
13.10
所示,并依照如表
13
-
5
所示在【属性】窗口中设置控
件的属性。设置
DetailsView
控件的数据绑定字段。
①
单击
DetailsView
控件的智能标记,选择【添加新字段】命令,将弹出【添加字段】
对话框。选择字段类型,输入页眉文本、数据字段,如图
13.9(a)
所示。
②
为
DetailsView
控件分别添加
BoundField
字段类型的学号、姓名、性别、系别、政
StuID
、
StuName
、治、英语、数学、计算机字段。数据字段分别对应数据表
Exam
中的字段名:
Gender
、
Department
、
Politics
、
English
、
Maths
、
Computer
,并在添加学号、姓名、性别、
系别字段的同时,选中【只读】复选框。
③
为
DetailsView
控件添加
CommandField
字段类型的编辑字段。在【选择字段类型】
下拉列表框中选择
CommandField
,在【页眉文本】处输入【编辑】,按钮类型选择
Link
,
并选中【编辑
/
更新】和【显示取消按钮】复选框,单击【确定】按钮。如图
13.9(b)
所示。
④
单击
DetailsView
控件的智能标记,选择【编辑字段】命令,在弹出的【字段】对
话框中,取消选中【自动生成字段】复选框,单击【确定】按钮,如图
13.9(c)
所示。
(a)
添加字段
(b)
添加命令字段
(c)
编辑字段
图13.9 设置DetailsView控件的数据绑定信息
256
第13章 使用ASP .NET开发学生成绩管理系统
⑤
设置主键。在
DetailsView
控件的【属性】窗口中,设置属性
DataKayNames
的值
为
StuID
。
(3)
生成事件函数。在如图
13.10
所示的页面设计窗口,双击【查询】按钮,系统会自
动生成一个名为
Button1_Click
的
ASP .NET
事件函数,同时打开事件编辑窗口。在
DetailsView
控件的【属性】窗口中,单击事件图标,分别双击
ModeChanging
操作和
ItemUpdating
操作,如图
13.11
所示,系统会自动生成相应的名为
DetailsView1_
ModeChanging
和
DetailsView1_ItemUpdating
的
ASP .NET
事件函数,同时打开事件编辑
窗口。
图13.10 页面设计效果 图13.11 DetailsView的事件函数
(4)
分别加入事件的处理代码。
在
ASP .NET
相应事件函数体中加入如下粗体阴影语句。
<%@ Page Language="VB" MasterPageFile="~/" Title="Untitled
Page" %>
<%@ Import Namespace="" %>
<%@ Import Namespace="" %>
(5)
保存并运行
文件,观察运行效果。
操作小结:
(1)
为
DetailsView
控件添加字段,
并指定数据字段,使得与数据表中指定字段相关联。
(2)
通过为
DetailsView
控件添加命令字段实现
DetailsView
控件中信息的编辑,此编辑
功能需要通过编码实现。
(3)
事件
DetailsView1_ModeChanging
是在
DetailsView
控件模式更改前被触发的,事
件
DetailsView1_ItemUpdating
是在对数据源操作之前被触发的。这两个事件相结合完成所
要求的任务。
(4)
函数
bind
是自定义的绑定函数。
(5)
单击【编辑】按钮时,需要在
DetailsView1_ModeChanging
事件中编码实现模式的
更改,并重新绑定。语句如下。
Mode(e)
bind(())
(6)
在对数据表更新后,需编码实现
DetailsView
控件退出编辑模式,恢复为只读模式,
并重新绑定。语句如下。
Mode(ly)
bind(())
练习
3
:使用母版页创建教师增加学生成绩页面
操作任务:
使用母版页设计程序
,实现教师增加学生成绩的功能。教师登录后,
259
ASP .NET动态网页设计案例教程(Visual Basic .NET版)
单击导航模块中的【增加学生成绩】按钮,转到
页面,此页面运行效果如
图
13.12
所示。
(a)
输入添加学生成绩信息
(b)
单击【添加】按钮后的运行效果
图13.12 页面运行效果
解决方案:
页面使用如表
13
-
6
所示的
的页面控件完成指定的任务。
表13-6 的页面控件及属性说明
类
型
ID
属
性
说
明
【学生学号】文本框
【学生姓名】文本框
【学生性别】单选按钮
【所在系别】文本框
【政治成绩】文本框
【英语成绩】文本框
【数学成绩】文本框
【计算机成绩】文本框
必填项验证控件
必填项验证控件
必填项验证控件
必填项验证控件
必填项验证控件
TextBox TextBox1
TextBox TextBox2
RadioButtonList RadioButtonList1
Items
:男
(
默认选项
)
、女
RepeatDirection
:
Horizontal
TextBox TextBox3
TextBox TextBox4
TextBox TextBox5
TextBox TextBox6
TextBox TextBox7
RequiredFieldValidator
RequiredFieldValidator
RequiredFieldValidator
RequiredFieldValidator
RequiredFieldValidator
RequiredFieldValidator1
RequiredFieldValidator2
RequiredFieldValidator3
RequiredFieldValidator4
RequiredFieldValidator5
ControlToValidate
:
TextBox1
ErrorMessage
:
*
不允许为空
ControlToValidate
:
TextBox2
ErrorMessage
:
*
不允许为空
ControlToValidate
:
TextBox4
ErrorMessage
:
*
不允许为空
ControlToValidate
:
TextBox5
ErrorMessage
:
*
不允许为空
ControlToValidate
:
TextBox6
ErrorMessage
:
*
不允许为空
260
第13章 使用ASP .NET开发学生成绩管理系统
续表
类
型
RequiredFieldValidator
ID
RequiredFieldValidator6
属
性
ControlToValidate
:
TextBox7
ErrorMessage
:
*
不允许为空
ErrorMessage
:
*0
到
100
之间
ControlToValidate
:
TextBox4
RangeValidator RangeValidator1
MaximumValue
:
100
MinimumValue
:
0
Type
:
Integer
ErrorMessage
:
*0
到
100
之间
ControlToValidate
:
TextBox5
RangeValidator RangeValidator2
MaximumValue
:
100
MinimumValue
:
0
Type
:
Integer
ErrorMessage
:
*0
到
100
之间
ControlToValidate
:
TextBox6
RangeValidator RangeValidator3
MaximumValue
:
100
MinimumValue
:
0
Type
:
Integer
ErrorMessage
:
*0
到
100
之间
ControlToValidate
:
TextBox7
RangeValidator RangeValidator4
MaximumValue
:
100
MinimumValue
:
0
Type
:
Integer
Button Button1
Text
:添加
Button Button2
Label Label1
Table
Text
:取消
CausesValidation
:
False
ForeColor
:
Blue
清除
Text
属性设置
【添加】按钮
【取消】按钮
显示信息
控制布局
值范围验证控件
值范围验证控件
值范围验证控件
值范围验证控件
说
明
必填项验证控件
操作步骤:
(1)
新建
ASP .NET
页面。选择菜单命令【文件】→【新建文件】,或者单击工具栏上
的
(
添加新项
)
按钮,打开【添加新项】对话框,选择【
Web
窗体】模板;在【名称】处
输入文件的名称:
;取消选中【将代码放在单独的文件中】复选框,选中
【选择母版页】复选框,单击【添加】按钮。在弹出的【选择母版页】对话框中,选择任务
2
中创建的母版页
,单击【确定】按钮。
(2)
设计
页面。选择【设计】选项卡,在
Content
控件中,首先选择菜
单命令【布局】→【插入表】插入表格,如图
13.13
所示设计单元格背景。然后从【标准】
工具箱中用鼠标拖动如表
13
-
6
所示的控件到设计页面的相应位置,如图
13.13
所示,并依
照如表
13
-
6
所示在【属性】窗口中设置控件的属性。
261
ASP .NET动态网页设计案例教程(Visual Basic .NET版)
图13.13 页面设计效果
(3)
生成按钮事件。在设计窗口双击【添加】按钮,系统将自动生成一个名为
Button1_Click
的
ASP .NET
事件函数;在设计窗口双击【取消】按钮,系统将自动生成一
个名为
Button2_Click
的
ASP .NET
事件函数,同时打开代码编辑窗口。
(4)
分别加入事件的处理代码。在
ASP .NET
相应事件函数体中加入如下粗体阴影语句。
<%@ Page Language="VB" MasterPageFile="~/" Title="Untitled
Page" %>
<%@ Import Namespace="" %>
<%@ Import Namespace="" %>
(5)
保存并运行
文件,观察运行效果。
操作小结:
(1)
对数据库执行添加信息之前,
需判断该信息是否已经存在,并给出相应的提示信息。
(2)
添加操作执行之后,应清除文本框中信息。
263
ASP .NET动态网页设计案例教程(Visual Basic .NET版)
任务
5
:使用母版页创建教师删除学生成绩页面
操作任务:
使用母版页设计程序
,实现教师对学生成绩的删除操作。教师登录后,
单击导航模块中的【删除学生成绩】按钮,转到
页面,此页面运行效果如
图
13.14
所示。
(a)
查询显示将要删除的学生成绩信息
(b)
单击【删除】按钮时的运行效果
图13.14 页面运行效果
解决方案:
该
页面使用如表
13
-
7
所示的
页面的控件完成指定的任务。
表13-7 页面的控件及属性说明
类
型
ID
属
性
说
明
学号文本框
查询按钮
验证控件
(
文本框
不允许为空
)
显示信息,编辑信息
控制布局
TextBox TextBox1
Button Button1
Text
:查询
RequiredFieldValidatorRequiredFieldValidator1
ErrorMessage
:
*
请输入学生的学号
ControlToValidate
:
TextBox1
DetailsView DetailsView1
Table Table1
操作步骤:
的
(1)
新建
ASP .NET
页面。选择菜单命令【文件】→【新建文件】,或者单击工具栏上
(
添加新项
)
按钮,打开【添加新项】对话框,选择【
Web
窗体】模板;在【名称】处
;输入文件的名称:取消选中【将代码放在单独的文件中】复选框,选中【选
择母版页】复选框,单击【添加】按钮。在弹出的【选择母版页】对话框中,选择任务
2
中创建的母版页
,单击【确定】按钮。
264
第13章 使用ASP .NET开发学生成绩管理系统
(2)
设计
ASP .NET
页面。选择【设计】选项卡,在
Content
控件中,首先选择菜单命
令【布局】→【插入表】插入表格。然后从【标准】工具箱中用鼠标拖动如表
13
-
7
所示的
控件到设计页面的相应位置,如图
13.16
所示,并依照如表
13
-
7
所示在【属性】窗口中设
置控件的属性。单击
DetailsView
控件的智能标记,选择【添加新字段】命令,在弹出的【添
加字段】对话框中,添加
CommandField
类型的【删除】命令字段,如图
13.15
所示。
页面最终的设计效果如图
13.16
所示。
图13.15 添加【删除】命令字段 图13.16 页面的设计效果
(3)
生成事件函数。在页面设计窗口,双击【查询】按钮,系统会自动生成一个名为
Button1_Click
的
ASP .NET
事件函数,同时打开事件编辑窗口。在
DetailsView
控件的【属
性】窗口中,单击事件图标
,双击
ItemDeleting
操作,系统会自动生成一个名为
DetailsView1_ ItemDeleting
的
ASP .NET
事件函数,同时打开事件编辑窗口。
(4)
分别加入事件的处理代码。在
ASP .NET
相应事件函数体中加入如下粗体阴影语句。
<%@ Page Language="VB" MasterPageFile="~/" Title="Untitled
Page" %>
<%@ Import Namespace="" %>
<%@ Import Namespace="" %>
(5)
保存并运行
文件,观察运行效果。
操作小结:
(1)
自定义绑定函数
bind
的返回值类型为
DataTable
。
(2)
在查询要删除的信息时,调用绑定函数
bind
,并在查询事件函数中将查询结果绑
定显示到
DetailsView
控件。若查询失败,需给出提示信息,如图
13.17
所示。实现代码:
MsgBox("
不存在你要删除的学生成绩信息!
", , "
提示信息
")
。
图13.17 要删除的信息不存在的提示信息
(3)
事件
DetailsView1_ItemDeleting
是在对数据库执行删除命令前被触发的。对删除操
作的结果,需给出必要的提示信息。删除操作成功,需清除
DetailsView
控件内容。
练习
4
:使用母版页创建无权访问信息提示页面
操作任务:
使用母版页设计程序
,当用户操作超出其权限设置时跳转到该页面。如以学
267
ASP .NET动态网页设计案例教程(Visual Basic .NET版)
生身份登录系统,单击导航模块中的【修改学生成绩】按钮,将跳转到
页面。该
页面运行效果如图
13.18
所示。
图13.18 页面的运行效果
解决方案:
该页面使用
Table
控件和
Label
控件完成指定的任务。
操作步骤:
(1)
新建
ASP .NET
页面。选择菜单命令【文件】→【新建文件】,或者单击工具栏上
的
(
添加新项
)
按钮,打开【添加新项】对话框,选择【
Web
窗体】模板;在【名称】处
输入文件的名称:
;取消选择【将代码放在单独的文件中】复选框,选中【选择
母版页】复选框,单击【添加】按钮。在弹出的【选择母版页】对话框中,选择任务
2
中
创建的母版页
,单击【确定】按钮。
(2)
设计
ASP .NET
页面。选择【设计】选项卡,在
Content
控件中,首先选择菜单命
令【布局】→【插入表】插入表格。然后从【标准】工具箱中用鼠标拖动
1
个
Label
控件
到设计页面,并设置控件的属性:
Label
的
ID
为
Label
,文本内容
(Text)
为【您无权访问该
页面】,
ForeColor
的属性值为
Red
,
Font-Size
的属性值为
XX-Large
。
(3)
保存并运行
文件,观察运行效果。
(4)
测试运行该系统,进一步完善该系统功能。
操作小结:
错误处理页面在系统开发过程中是必不可少的。
学习小结
通过本章您学习了:
(1)
学生成绩管理系统的开发过程。
268
第13章 使用ASP .NET开发学生成绩管理系统
(2)
创建用户登录页面。
(3)
创建母版页及其应用。
(4)
创建主菜单页面。
(5)
创建学生查询页面。
(6)
创建教师查询学生成绩页面。
(7)
创建教师修改学生成绩页面。
(8)
创建教师增加学生成绩页面。
(9)
创建教师删除学生成绩页面。
(10)
创建权限设置提示页面。
习题
1
.本章开发的学生成绩管理系统使用的是哪种模式结构?
2
.对数据库的基本操作
(
查询、删除、增加、修改
)
需要引入的命名空间有哪些?
3
.本章例子中是如何实现用户访问页面权限设置的?
4
.
ASP .NET 2.0
中,
DetailsView
控件只可显示单条记录,可显示多条记录的数据控
件有哪些?
5
.事件
DetailsView1_ModeChanging
是在什么情况下被触发的?该事件中如何设置用
户的更改模式?
269


发布评论