NET网站开发项目化教程PPT单元设计4-4 实现“新知书店”前台页面菜单栏功能_第1页
NET网站开发项目化教程PPT单元设计4-4 实现“新知书店”前台页面菜单栏功能_第2页
NET网站开发项目化教程PPT单元设计4-4 实现“新知书店”前台页面菜单栏功能_第3页
NET网站开发项目化教程PPT单元设计4-4 实现“新知书店”前台页面菜单栏功能_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE1《ASP.Net应用开发》课程单元教学设计4_4教学单元实现“新知书店”前台页面菜单栏功能授课班级授课学时课时授课日期年月日第周周第节授课教师授课地点教学目标知识目标1.数据库中菜单表的设计2.在母版页中编程实现递归法动态添加菜单节点(菜单项保存在数据库)能力目标掌握递归法编程实现动态添加菜单节点素质目标规范管理能力;自我学习能力;相互协作能力。教学重点TreeView控件的相关属性、方法和事件教学难点在母版页中编程实现递归法动态添加菜单节点。能力训练任务或案例实现“新知书店”前台页面菜单栏功能教学策略(教学方法与组织形式)1.课件:根据本节课程设计的内容及教学计划,逐步展现知识点。2.板书:针对学生在学习和练习过程中出现的问题,进行补充讲解。调节课堂节奏,给学生思考的时间。3.教师程序编写:让学生体验实现“新知书店”前台页面菜单栏功能,与所学知识点一一对应,加深理解。4.问答:就一些知识点的灵活性与学生进行问答互动。5.就(3)和(4)中同学们的表现给出部分平时分,为了鼓励同学们的参与积极性,参与者加1分,答对者加2-3分。课后练习设计自己网站的菜单导航教学后记教学过程教学引入:讨论:网站菜单通过创建站点地图或创建XML实现导航是否方便可行。教学内容:4)TreeView控件绑定数据库在实际项目开发中,菜单项作为数据的一部分通常被保存在数据库中,有专门的数据维护人员通过内部系统管理平台来操作维护菜单项,而菜单的深度也会随着网站的用户需求不断完善。显然不管使用站点地图或是XML文件方式维护数据都很困难。下面我们通过编程实现递归法动态添加节点、设置属性。从而实现数据与代码的分离,提高数据的可维护性。图4-21是一个企业OA中的系统菜单表。其中“NodeId”字段为每个菜单项的编号,“DisplayOrder”字段为显示顺序,“ParentNodeId”字段为父节点的编号。如何按照图4-21中的数据结构将数据读取到TreeView中呢?注意:取“ParentNodeId”为0的节点作为一级节点添加到TreeView中。根据每个一级节点的”NodeId”的值找到与其相等的“ParentNodeId”的值,如果找到就把找到的节点作为子节点添加到该一级节点。说明:我们看到的系统菜单表只有两级,但随着业务的拓展该表中的菜单项级别会越来越高,为了提高扩展性,采用递归方法进行无限级添加。图4-21OA系统菜单表中的数据信息关键代码如下:protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){this.tvMenu.Dispose();GetDataToTable();//将数据库中的数据填充到DataSetInitTreeByDataTable(this.tvMenu.Nodes,"0");//使用递归方法动态添加节点}}///<summary>///使用递归方法动态添加节点(DataTable方式实现)///</summary>///<paramname="tnc">父节点</param>///<paramname="parentId">父节点Id</param>privatevoidInitTreeByDataTable(TreeNodeCollectiontnc,stringparentId){DataViewdv=newDataView();//动态视图方便筛选TreeNodetnNode;dv.Table=ds.Tables[0];//全局的DataSet,对应系统菜单表SysFundv.RowFilter="ParentNodeId="+parentId;foreach(DataRowViewdrvindv){tnNode=newTreeNode();tnNode.Value=drv["NodeId"].ToString();tnNode.Text=drv["DisplayName"].ToString();tnNode.NavigateUrl=drv["NodeURL"].ToString();tnc.Add(tnNode);InitTreeByDataTable(tnNode.ChildNodes,tnNode.Value);//递归调用}}切换到页面Default.aspx(在文件夹RecursionTreeView中)的设计视图模式,为TreeView选择“自动套用格式”并运行代码,效果如图4-22所示。图4-22编程实现递归法动态添加TreeView节点数据但这种方式添加节点也存在缺点,对于数据量大的情况一次性将菜单数据全部都加载到页面中会降低网站的性能,因此可以采用当用户没单击一个一级节点,调用相应方法获取该级节点下全部子节点的方法来提升网站的性能。任务实施:实现“新知书店”前台页面菜单栏功能1.任务描述:使用ADO.NET技术读取数据表Categories中的数据并保存到泛型集合中,并使用TreeVi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论