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