浅谈TreeView Web服务器控件在网络备课系统中的应用

来源 :中国教育信息化·高教职教 | 被引量 : 0次 | 上传用户:same66
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:当我们上网浏览一些网站时,经常在网站页面上看到一个类似windows资源管理器的树形结构,这个树形结构让资源的显示一目了然,当超链接某个地址时方便快捷。本文简单介绍了ASP.NET2.0 TreeView Web服务器控件在网络备课系统中的应用。
  关键词:TreeView ASP.NET 2.0  C# 备课系统
  中图分类号:TP311文献标识码:A
  文章编号:1673-8454(2007)09-0070-02
  
  一、引言
  
  现在大多数网页开发工具没有提供直接可用的TreeView控件,在网页中实现目录树大多采用事先根据需要描述的数据结构生成静态目录树的方法。当要描述的数据源发生改变(如某结点被删除、添加或者移动)时就必须重新修改代码,如果数据源的改变是经常性的,将会使系统的管理和维护变得十分繁琐。
  而在ASP.NET2.0中利用微软提供的TreeView Web树形控件,能够使得在网页上实现目录树和在窗体程序中一样方便。
  
  二、TreeView Web控件简介
  
  
  TreeViewWeb 控件是微软发布的Internet Explorer Web 控件之一,也简称为 IE Web 控件。当 TreeView控件在访问者浏览器中显示时,会呈现一棵树,此树与 Windows 资源管理器中的树非常类似。他们之间所不同的是,TreeView 控件可以由任意多个子节点组成。每个子节点都可以关联文本和图像或者与某个地址进行超链接。包含多个子节点的层次结构构成了 TreeView web控件所呈现的树结构。
  自微软公司把目录树用于Windows95中的资源管理以来,用TreeView Web控件来显示数据的方式得到了广泛的应用,这种把数据按照树形结构组织显示的方式可以很直观地描述复杂的层次关系。利用TreeView Web控件与SQL SERVER数据库联系起来进行组织,可以清晰地显示后台数据库中的数据节点和数据结构。
  
  三、TreeView Web控件在备课系统中的应用
  
  1.TreeView Web控件的安装
  首先到微软网站上下载IE Web控件包,大小为360K。下载并安装完控件后,将创建一个目录,找到这个目录,双击 build.bat 文件后将创建一个子目录 build,编译 src 子目录中的类,并将生成的程序集和支持文件复制到 build 子目录中。运行完 build.bat 文件后,build 子目录将包含程序集文件 Microsoft.Web.UI.WebControls.dll 和子目录 Runtime。要在 ASP.NET Web 应用程序中使用 IE Web 控件,必须将 build\Runtime 子目录中的内容复制到 Web 应用程序的 webctrl_client/1_0 子目录中,并将Microsoft.Web.UI.WebControls.dll 复制到 Web 应用程序的 /bin 子目录中。[2]
  本网络备课系统采用Microsoft Visual Studio.NET2003开发 Web 应用程序,将TreeView Web 控件添加到 ASP.NET Web 页很简单。将TreeViewWeb 控件加入到工具箱中,然后把控件从工具箱拖放到页面设计器中即可。
  
  2.利用TreeView Web控件建立树形结构
  (1)网络备课系统课程配置树形结构流程图,如图1所示。
  (2)树形结构的建立
  建树的基本思路是:从根节点开始递归调用显示子树,在这里用C#语言下的代码如下:
  privatevoid connection()
   { try //连接字符串
   { string con=ConfigurationSettings.App-Settings["dsn"];
   SqlConnection conn=new SqlConnection(con);//连接字符串
   conn.Open();
   SqlCommand order=new SqlCommand("sp_ inittree",conn);
   order.CommandType=CommandType.StoredPro-cedure;//调用存储过程
   SqlParameter courseid= order.Parameters.Add("@courseid", SqlDbType.Int,10); //设置存储过程参数
  courseid.Value=this.DropDownList1.SelectedItem.Value;
   SqlDataAdapter adapter=new SqlDataAdapter();
   adapter.SelectCommand=order;
   ds=new DataSet(); //建立并填充数据集
   adapter.Fill(ds,"db_lecture");
   conn.Close();
   catch(SqlException e)
   { Console.WriteLine("Exception in Main: " e.Message); //出错处理
   }
   InitTree(tvMenu.Nodes,"0");
   }
   private void InitTree(TreeNodeCollection Nds,string parentId)
   {DataView dv=new DataView();
   TreeNode tmpNd;
   string intId;
   dv.Table=ds.Tables["db_lecture"];
   dv.RowFilter="parent_id=’" parentId "’" ;
   foreach(DataRowView drv in dv)
   { tmpNd=new TreeNode();
   tmpNd.ID=drv["lecture_id"].ToString();
   tmpNd.Text=drv["lecture_title"].To-String();//节点标题
   tmpNd.CheckBox=true;//选择框用于选中节点
   tmpNd.NavigateUrl="../" drv["lecture_path"].ToString();//节点的URL
   Nds.Add(tmpNd);
   intId=drv["parent_id"].ToString();
   InitTree(tmpNd.Nodes,tmpNd.ID);//递归调用
   }
   }
  (3)添加子节点
  下面就添加过程进行分析,先通过getNodeID(nodes)自编函数找出选中节点的ID,再通过数据库访问在数据表中找到该节点的记录,确定该节点的order_id值,同时也要防止没有选中节点就添加,因此同时还要求找出数据表中最大order_id,若没有选中节点就添加则新添加节点order_id=maxorderid 1。之后执行addnode存储过程,此存储过程起到关键作用。把新添加的节点写入数据表,再调用connection()函数(该函数用来连接数据库且重新初始化目录树),立即在目录树可见新添加节点。
  (4)修改、删除节点
  删除、修改节点:同样先选中要删除或要修改的节点,再按删除节点或修改节点按钮即可。思路是修改数据表中对应的节点信息,再重新初始化目录树。具体实现方法:通过getNodeID(nodes)函数获得选中节点,再执行sp_deletenode存储过程即可删除选中节点,修改节点则执行sp_amend存储过程即可完成数据表中数据的修改,最后调用connection()函数。
  (5)上移、下移节点
  上移、下移节点:先选中要上移或下移的节点,再按上移节点按钮或下移按钮,具体实现方法:通过getNodeID(nodes)函数获得选中节点ID,再在数据表中找出该记录,同时执行sp_upselect存储过程,在该目录树找出选中节点的上一节点,之后执行sp_uporder存储过程,完成两节点交换位置,从而达到上移的效果。下移原理相同。
  
  四、结束语
  
  利用TreeView Web服务器控件建立树状结构,使得网络备课系统中课程配置易于操作,教师在使用备课系统时,可以直观地看到自己课程知识章节的设置,提高了备课的效率。
  
  参考文献:
  [1] http://msdn2.microsoft.com/zh-cn/library/e8z5184w(VS.80).aspx
  [2] http://www.microsoft.com/china/msdn/archives/library/dnaspp/html/aspnet-usingtreeviewiewebcontrol.asp
  [3] John Kauffman,Brian Matsik(美).ASP.NET数据库入门经典(C#篇)[M].清华大学出版社,2003.3
  [4]李应伟,姚素霞,景丽.ASP.NET数据库高级教程(C#篇)[M].清华大学出版社,2004.7
  [5]郝刚,袁永刚,齐艳.ASP.NET服务器控件开发技术与实例[M].人民邮电出版社,2005.1
  [6]李贵辉,李兰友.基于Web的备课系统的设计与实现[J].教育信息化(学术),2006.3
其他文献
幼儿园如何通过项目教学活动来落实核心素养、奠定幼儿的积极品格?北京市朝阳区惠新里幼儿园结合国际上关于核心素养的共识,将课程目标定位为培养幼儿的十大积极品格——有序、爱心、自信、分享、尊重、孝敬、勇敢、责任、合作、坚毅,使幼儿拥有自律、自由、自主、自信的人格,初步建立起“开智启慧、明德正心”的“慧心课程”,开展了丰富而有意义的项目教学活动。下面以小班案例“神奇虫宝宝”为例。   活动背景与过程  惠
摘 要:我国职业技术院校IT专业近几年来生源不断下滑,培养的学生技能普遍比较差,则缺乏针对性,不适应企业的岗位需求。IT专业如何设置,教学内容如何组织、如何施教,才能适应企业的岗位需求。本文从IT岗位需求入手,探讨职业技术院校IT专业设置,以及相应的施教策略,从而有利于培养实用型的技能人才,满足企业需求。  关键词:岗位需求;T专业设置;技能人才  中图分类号:G434 文献标志码:A 文章编号:
什么是灵感?杜威说,灵感是人们思维过程中一种新的思路突然接通,它是一切创新的关键起点,可遇不可求,特别珍贵。幼儿期是一个人顿悟式灵感思维最活跃的时期。因为童心,不拘于物,不滞于相,天马行空,感受欢喜。就像他们发现一堆枯树枝会说“我捡到一条鳄鱼”“我捡到一只蜜蜂窝”“我捡到两颗大象的牙齿”,他们与生俱来能和任何自然物进行通灵的对话,灵感一触即发,那是真正来自生命本源的灵感。但是,如果没有后期的跟进,
作为一个孩子刚上幼儿园的妈妈,我特别能理解家长们的唠叨。这种唠叨其实并不是一种不信任,更像一种与孩子分离时不舍的情感表达。作为幼教工作者,我们可以换一个角度来理解这种“嘱咐”,就更容易接受和理解这种“唠叨”。在工作中我的做法是“让喝水看得见”,让“多喝水”不再成为家长传递情感的连接,而成为家长对老师工作“放心”的保证。  ● 从“生理表现”上看得见  孩子在幼儿园有没有喝足水,最直观的方式就是观察
摘 要:本文主要讨论在基于XML的试题库系统中,通过XSL转换方便快速地输出试卷的方法和实现过程。通过此方法,不仅可以很好地控制试卷的版面设计,而且使程序、试卷数据和样式分离,在输出试卷时具有很大的灵活性,可以输出多种格式的试卷。  关键词:试卷 输出 格式 XML XSL FOP  中图分类号:G434 文献标识码:A 文章编号:1673-8454(2007)10-0070-03    一、引言
团结湖第一幼儿园创建于1981年5月,是北京市第一批居民小区配套幼儿园。随着进入21世纪,国家更注重创造力的培养,培养创造型人才是提升国家核心竞争能力的需要,也是个人发展的需要。幼儿具有创造的潜能,其创造力发展具有可塑性。我园早在1995年就开始进行《幼儿创造能力培养的研究与实践》课题研究,2011年独立承担北京市朝阳区教育科学“十二五”规划课题《创造教育园本课程的实践研究》。  在持续不断的研究
“过山车”玩具是一款隐含着重力平衡、重力加速度、空间方位、作用力与反作用力、轴承原理等各种科学元素的科学类玩具。材料包含有各种积木块、直轨道积木、弯轨道积木,以及小木球、螺杆、风轮等。游戏者可以按照自己的想法任意组装  各种“轨道”,感受各种轨道上小球通过的各种状态。  玩具价值分析  该玩具适宜4~6岁幼儿单独游戏或小组合作游戏。这一时期幼儿抽象逻辑思维开始萌芽,好奇、好问,有较强的观察能力和探
理解、尊重儿童,是《3-6岁儿童学习与发展指南》(以下简称《指南》)的核心精神。我最初借鉴新西兰“学习故事”的理念和实践,模仿“学习故事”的写法,也是希望借此强化自身“理解、尊重儿童”的基本功。刚开始接触“学习故事”,读过一些相关的理论文章与实践案例后,我暗暗欣喜:把原来写的教育故事、案例反思里的第三人称改成“你”,不就能突出教师对孩子的了解和认识了嘛。于是,我尝试直接改写以前的教学反思《“画蛇添
6月30日,中国教育信息化杂志社联合理光(中国)投资有限公司在教育部召开了“学校文印管理信息化及自助服务”研讨会。此前,我们较少关注到学校文印相关的信息化建设,因而,此次会议能汇聚一批学校校办文印管理、图书馆文印管理的领导和工作人员难能可贵。教育部教育管理信息中心主任助理、中国教育信息化杂志社常务副社长刘学民,中国教育信息化杂志社副社长周一,理光(中国)有限公司销售部副总经理宫琦先生,理光(中国)
摘 要:南京市从2012年5月启动“网络与数字化环境下的教学实验项目”的试点工作以来,在不同的阶段开展了不同形式的专题研讨与展示活动,初步取得了一些阶段性的研究成果,笔者以一个参与者和管理者的角度对南京市一年来的实验研究提出一些相对客观的描述与思考。  关键词:移动学习;现状;思考  中图分类号:G434 文献标志码:A 文章编号:1673-8454(2013)23-0064-02  《教育信息化