1、第14章 网上招聘与留言板,第14章 网上招聘与留言板,由于网站工作在Internet开放的环境中,因此网站可以给用户在最广阔的范围内提供信息交换的平台。本章将讲解两个典型的应用项目:网上招聘与留言板。学会了这两种项目的设计,其他类似项目的设计都可以迎刃而解。 在本章中将利用FormView控件来设计,需要用到前面几章中学过的内容,所以它是一个综合性的章节。本章中将要讲解的具体问题包括: 概述 利用FormView控件设计招聘网页 利用FormView控件设计留言板 使用Wizard控件,第14章 网上招聘与留言板,14.1 概 述 14.2 利用FormView控件设计招聘网页 14.3 利
2、用FormView控件设计留言板 14.4 使用Wizard控件 14.5 小 结 14.6 习 题,14.1 概 述,一个用于信息交换的应用程序应该同时具备以下三方面的功能: 给用户提供一个友好的输入界面; 能够自动保存用户输入的数据; 能够对输入的数据进行整理、分析和处理。 其中“自动保存用户输入的数据”是设计的关键,也是用传统方法设计的难点。下面采用FormView控件并结合数据库来进行设计。 FormView控件与前面讲过的GridView控件都继承于CompositeDataBoundControl类。它们都可以用来显示数据表,并且对数据表进行编辑。现在利用它拥有的“插入记录”的功能
3、来自动保存用户输入的数据。 FormView与GridView控件之间最重要的区别是,FormView控件的显示界面可以更加自由,而不限于表格的形式,因此更容易适合于不同显示界面的需要。,14.2 利用FormView控件设计招聘网页,一个招聘广告通常需要先介绍招聘单位本身的简要情况,并提出招聘的要求,然后给应聘者提供一个登记的界面。该界面应该尽量友好,使用户能够用最简便的方式输入需要的数据,为以后进一步联系奠定基础。 例如,下面是一个“招聘软件开发人员”的网页,其界面的简要情况如图14.1所示。,14.2 利用FormView控件设计招聘网页,图14.1 招聘网页的界面,14.2 利用For
4、mView控件设计招聘网页,14.2 利用FormView控件设计招聘网页,其中,编号(bh)是关键字,设为自动增量,因此不出现在输入的界面中。 (2) 将FormView控件与数据库连接。从【工具箱】将FormView控件拖入窗体,并通过数据源控件与数据库连接。请注意在连接过程中启用【高级】按钮,以便生成各种SQL编辑语句。 (3) 创建输入界面。FormView控件提供了多个模板,分别用于不同需要时的界面设计。如“项目模板(ItemTemplate)”、“编辑模板(EditItemTemplat)”、“插入模板(InsertItemTemplate)”、“头模板(HeaderTemplat
5、e)”和“尾模板(FooterTemplate)”等。,14.2 利用FormView控件设计招聘网页,此例使用FormView控件的“插入模板”。 方法是:右击FormView控件,在弹出的菜单中选择【编辑模板】命令,然后在弹出的子菜单中再选择InsertItemTemplate项,即可转向“插入模板”。当模板出现时,其中已经包含了一些控件,只是这些控件的布局并不一定符合设计要求,可以先删除这些控件。 接着给模板进行布局,然后放入各种类型的输入控件(如TextBox、DropDownList、RadioButtonList、CheckBox控件等)。除此以外还需放入两个按钮:“保存”和“复位
6、”按钮。在这些控件中除“复位”按钮要采用HTML的Reset按钮以外,其他控件均采用服务器端标准控件(Label控件也可以采用HTML控件)。,14.2 利用FormView控件设计招聘网页,(4) 进行数据绑定并设置其他参数。通过各控件的【编辑DataBindings】属性分别与数据表对应的字段进行数据绑定。情况如图14.2所示。 图中表示TextBox1控件的Text属性已经与数据表的“name”字段进行绑定。窗体下面的代码表达式:Bind(“name“)就表明了这种绑定关系。 给“保存”按钮的CommandName属性赋值为“insert”; 给各输入控件增加相应的校验控件。 (5) 为
7、了使得打开网页时立即进入插入模板,应将“插入模板”设置为FormView的默认模式。为此,先退出插入模板,然后在FormView控件中,将DefaultMode属性设为“Insert”。,14.2 利用FormView控件设计招聘网页,(6) 打开头模板(HeaderTemplate),并在头模板中介绍公司情况并提出招聘要求。 (7) 给应聘者返回信息。方法是:在FormView控件的ItemInserted事件中输出信息。例如书写有关感谢的语句如下: void FormView1_ItemInserted(object sender, FormViewInsertedEventArgs e)
8、Response.Write(“感谢您参加应聘!“);,14.2 利用FormView控件设计招聘网页,图14.2 给各控件进行数据绑定,14.3 利用FormView控件设计留言板,14.3.1 进入留言板 14.3.2 留言板网页的界面设计 14.3.3 对留言板的管理,14.3 利用FormView控件设计留言板,留言板可以为用户提供网上发言的机会,它不受时间、地点的限制,是及时获取用户反馈信息的一种好方式。 网站的留言板应能给用户提供一个简单、友好的输入界面;还要能自动保存这些信息并允许用户随时查看其他用户的留言。 留言是一种面向社会开放的机制,因此也难免会出现一些不健康的留言,应该允
9、许网站管理人员随时或定期地清理那些过时的信息或者信息垃圾。 设计留言板网页要综合应用增添记录、校验输入、登录检验等技术,在删除留言时还要用到批量删除记录的方法等。利用系统提供的控件,可以很方便地实现这些功能。,14.3.1 进入留言板,14.3.2 留言板网页的界面设计,14.3.2 留言板网页的界面设计,(2) 拖入FormView控件,然后按照前面步骤进行设置。其中留言内容的TextBox文本框的Type的属性设成多行(multiline),并将它的MaxLength属性设置成最多允许字长(例如800)。留言板的界面如图14.4所示。 (3) 除SJ(时间)输入框以外其他均与数据表进行数据
10、绑定。 (4) 在 SJ(时间)的输入框中按照以下方式进行数据绑定。即与系统时间(DateTime. Now)绑定在一起。同时将时间的输入框的ReadOnly属性设为True,如图14.5所示。,14.3.2 留言板网页的界面设计,(5) 利用FormView1_ItemInserting事件将系统时间存入数据表中。语句如下: void FormView1_ItemInserting(object sender, FormViewInsertEventArgs e)SqlDataSource1.InsertParameters.Clear();SqlDataSource1.InsertPara
11、meters.Add(“sj“, DateTime.Now.ToString(); ,14.3.2 留言板网页的界面设计,(6) 在FormView控件的ItemInserted事件中输出语句表示已经收到留言,并表示感谢。语句如下: void FormView1_ItemInserted(object sender, FormViewInsertedEventArgs e)Response.Write(“感谢您的留言!“);,14.3.2 留言板网页的界面设计,图14.4 留言板界面,14.3.2 留言板网页的界面设计,图14.5 自动显示留言时间,14.3.3 对留言板的管理,网站管理人员应
12、该定期或不定期地对留言板进行清理,及时删除一些过时的信息或者一些信息垃圾。为此必须为管理留言板的工作设计一些网页,进入这些网页的人应该具有一定的权限。关于设置权限的方法在后面的章节中讲述。 清理留言板中的记录可以利用GridView控件与留言板的数据表连接,并且按照编辑方法配置数据源控件,并在GridView控件中增加【删除】按钮,以便有选择地删除留言。,14.4 使用Wizard控件,14.4.1 Wizard控件的用途 14.4.2 Wizard控件的结构 14.4.3 Wizard控件的使用方法,14.4.1 Wizard控件的用途,Wizard是ASP.NET 2.0新提供的一个控件。
13、它的作用是将多个窗口放在同一个网页的不同模板中,然后利用显示/隐含模板的方法,在界面之间进行切换。就像分页显示一样。但与分页不同的是,Wizard控件中放进的是独立而又相关的界面。例如,一个企业的人员组成、产品销售、财务情况等就可以分别放入不同的模板中。前面讲述的留言板如果有多种界面时,也可以将它们放入不同的模板中。 在Wizard控件中,这些模板将按照步骤(第一步、第二步等)进行排列,用户可以按顺序来逐个浏览界面,也可以用跳转的方式进行查阅。由于界面的切换都是在同一张网页的各个模板中进行,因此切换的速度比较快,使用起来非常方便。,14.4.2 Wizard控件的结构,Wizard控件的界面分
14、为4部分,如图14.6所示。 标题部分(Header):放在界面的上方,起标题的作用。 视图部分(View):界面的主要部分。中间放入各种控件组成需要的界面。 浏览按钮部分(Navigation Bar):通常放在界面的下方,由【上一步】、【下一步】等按钮组成,用来执行逐步浏览的功能。 跳选浏览部分(Sidebar):通常放在界面的左方,利用它可以采用跳选方式浏览界面。这一部分是可选的部分。只要将Wizard控件的DisplaySideBar属性设为false,该部分就被隐藏起来。,14.4.2 Wizard控件的结构,图14.6 Wizard控件的结构,14.4.3 Wizard控件的使用方
15、法,1设置浏览的步骤 将Wizard控件拖进窗体,单击属性Wizard Steps右边的省略号按钮,将弹出如图14.7所示的对话框。 利用【添加】按钮结合右边的Title属性,给Wizard控件增添步骤,并给各个步骤 命名。 2给各模板设置属性 然后点击每一步,分别为每步的界面增添需要的控件,增添控件的方法与在网页中增添控件一样。除此以外,在Wizard控件的【属性】窗口中,系统为各个模板以及模板中的按钮提供了丰富的属性,如底色(BackColor)、边界样式(BorderStyle)、边界线宽度(BorderWidth)、边界颜色(BorderColor)等。可以按照自己的爱好来设置这些属性
16、。一个简便的方法是先选择【自动套用格式】,在系统提供的多种格式中先选择一种,然后再分别给各个模板做进一步的修改。,14.4.3 Wizard控件的使用方法,图14.7 WizardStep集合编辑器,14.5 小 结,招聘网页和留言板是使用非常广泛的两个典型项目,它们的主要功能都是给用户提供一个友好的界面,要求用户提供相关数据,自动保存这些数据,以便进行分析和处理。两者之间只是显示的界面不同。使用FormView控件来做这些项目非常合适。因为这个控件能够通过数据源控件连接数据库,自动执行插入记录的操作。另外,由于FormView控件的显示界面比较自由,可以灵活地进行布局。控件还提供了多种模板,
17、可以根据需要进行选择。设计中需注意三件事: (1) 设计出一个友好的界面; (2) 各个输入控件与数据库之间正确地进行数据绑定; (3) 对输入的数据要进行必要的校验。 Wizard控件是ASP.NET 2.0提供的一个新控件,这个控件的特点是能够将几个独立而又相关的窗体放到同一个网页中来,通过浏览按钮或跳转选择可以在这些网页间进行浏览,由于这种方法设计简单,运行中切换的速度也比较快,因此比较受欢迎。,14.6 习 题,1 填空题 2 选择题 3 简答题 4 操作题,14.6 习 题_ 填空题,(1) 网上招聘模板通常分为上、下两部分。上面部分通常使用FormView控件的 ,用来介绍公司情况
18、并提出招聘要求;下面部分通常使用 ,用来输入和存储数据。 (2) 当应聘者提交数据后应该在 事件中向应聘者发出感谢或收到的信息。 (3) 通常在应聘的界面上要放入“保存”和“复位”两个按钮,其中“复位”按钮采用 控件,而“保存”按钮则必须是 控件。 (4) 如果要求自动保存提交数据的时间,应该在 事件中编写保存当前时间的代码。,14.6 习 题_选择题,(1) FormView与GridView控件相比最重要的区别是 。A. 能够存储数据 B. 外观比较美观 C. 显示的布局几乎不受限制 D. 数据量受一定的限制 (2) 留言板必须加强管理,这是因为 。A. 存储容量有限 B. 查看必须经过授
19、权 C. 影响查看的速度 D. 可能存在过时或不健康的留言 (3) Wizard控件的最大特点是 。A. 能够包含大量数据 B. 能将多个窗口集中到一个网页中 C. 布局不受限制 D. 能够快速进行浏览,14.6 习 题_ 简答题,(1) 一个网上信息交换程序通常应该包括哪几方面的功能? (2) 简述网上招聘网页的设计步骤。 (3) 简述设计留言板的设计步骤。 (4) Wizard控件的作用是什么?,14.6 习 题_操作题,(1) 请实际设计一个研究生网上报名的网页,要求对输入的数据进行合法性验证,并能自动保存数据(包括提交时间),数据提交后能够向报名者反馈相关信息。 (2) 设计一个网上的舆论调查程序。要求在用户提交自己的意见以后立即显示到目前为止调查的综合结果。 (3) 利用Wizard控件设计一个包括进入留言、实际留言、管理留言等多页的应用 程序。,Q & A? Thanks!,