CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

急 急 急 TreeView控件中使用GetNodeFromIndex取树的节点问题 高手帮忙啊

楼主zmzzll(散散心)2005-04-01 17:30:45 在 .NET技术 / ASP.NET 提问

我在   WEB   项目中做一个树形菜单  
   
  主要思想:(不采用递归方法)  
  首先在Page_Load函数中调用所有根节点,然后点击某一个根节点调用SelectedIndexChange事件加载它的所有子节点,再然后点击子节点的子节点还调用SelectedIndexChange事件加载它的子节点,如此循环下去  
   
  步骤如下:  
  1、在tree.aspx.cs文件Page_Load函数中调用第一层根节点  
  2、使用TreeView控件的SelectedIndexChange事件给根节点添加子节点  
  以上都是成功的  
  3、如果子节点还有子节点,再调用SelectedIndexChange事件时就出错了     出错提示如下:  
   
  输入字符串的格式不正确。    
  说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。    
   
  异常详细信息:   System.FormatException:   输入字符串的格式不正确。  
   
  堆栈跟踪:    
   
   
  [FormatException:   输入字符串的格式不正确。]  
        System.Number.ParseInt32(String   s,   NumberStyles   style,   NumberFormatInfo   info)   +0  
        System.Int32.Parse(String   s)   +38  
        test.tree.Tv1_SelectedIndexChange_1(Object   sender,   TreeViewSelectEventArgs   e)   in   d:\德力科怡erp软件b_s版本\test\tree.aspx.cs:62  
        Microsoft.Web.UI.WebControls.TreeView.OnSelectedIndexChange(TreeViewSelectEventArgs   e)  
        Microsoft.Web.UI.WebControls.TreeView.RaisePostDataChangedEvent()  
        Microsoft.Web.UI.WebControls.BasePostBackControl.System.Web.UI.IPostBackDataHandler.RaisePostDataChangedEvent()  
        System.Web.UI.Page.RaiseChangedEvents()  
        System.Web.UI.Page.ProcessRequestMain()  
   
    问题:  
  用GetNodeFromIndex(TreeView.SelectedNodeIndex)可以取到TreeView控件的根节点,但不能取到他的子节点     为什么?   很头痛     高手帮忙解决啊!!!  
  问题点数:20、回复次数:3Top

1 楼zmzzll(散散心)回复于 2005-04-02 09:13:05 得分 0

怎么没有人帮我解决啊?????????Top

2 楼cool___boy163(不回帖不是我的错)回复于 2005-04-02 09:20:42 得分 20

我对这个树的东西也很头疼,只懂基础的:—)  
  帮顶,密切关注!Top

3 楼zmzzll(散散心)回复于 2005-04-02 13:42:16 得分 0

GetNodeFromIndex已经解决,  
  TreeView.Nodes[n]可以取到树节点的ID值,但是知识根节点的ID值,因为中括号中的n必须是整数,而用SelectedIndexChange可以取到子节点的索引号,不过它是小数,例如1.1表示第二个节点下的第一个节点,当通过TreeView.Nodes[n]取子节点的ID值的时候,就会出现“输入字符串的格式不正确”的错误提示。正确做法如下:  
   
  先通过Tv1.GetNodeFromIndex(n)取到子节点对象,这里的n是字符串类型的,所以子节点索引号是小数也不会出错,然后Tv1.GetNodeFromIndex(n).ID得到节点的ID,有了节点的ID号,事情就好办多了。  
  Top

相关问题

  • 删除treeview 控件节点
  • treeview 控件找父节点
  • treeview控件,增加节点问题!
  • 怎样在treeview控件的节点中间插入节点?
  • treeview控件中如何判断点击的是父节点,还是子节点
  • TreeView控件,已知节点A的KEY值,怎么删除这个节点A?
  • 在TreeView控件中,如何得到选中节点的父节点的值?
  • treeview控件问题,怎样确定控件中是否有节点
  • 控件TreeView节点控制,迷惑不解!!!
  • TreeView节点分色显示及TImage控件组问题!棘手!!!

关键词

  • 节点
  • 控件
  • tv
  • microsoft
  • getnodefromindex
  • treeview
  • 调用
  • selectedindexchange
  • 正确
  • 出错

得分解答快速导航

  • 帖主:zmzzll
  • cool___boy163

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo