TreeView如何动态装载节点?急!!!

carolbaby 2003-12-08 11:47:20
C#的TreeView的事件中,Expand()和SelectedIndexChange()好像在点完一个节点后都不相应?我想点完一个节点后,动态生成它的下层节点,就是不知道这段代码该写在哪里?
...全文
86 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
e33zozo 2003-12-30
  • 打赏
  • 举报
回复
在事件中动态加载子节点确实可以比递归效率高,不过每次展开都要加载一次,不知道有没有另外的解决办法
xinshaw 2003-12-08
  • 打赏
  • 举报
回复
同意上面几楼
你把几个事件加进去,然后按F11运行,或者设断点跟踪,就明白了
lutao206 2003-12-08
  • 打赏
  • 举报
回复
private int GetNodeNum() //动态获取节点号
{
int i =0;
TreeNode node = this.treeView1.SelectedNode;
while(node != null)
{
ntext = node.Text;

node = node.Parent;

i++;

if(node != null)
{
nodetext = node.Text;
}
}
return i;

}
carolbaby 2003-12-08
  • 打赏
  • 举报
回复
真不好意思,我这里还是不行,跟踪的时候发现点击节点并不引起SelectedIndexChange()事件。另外,我也不知道在SelectedIndexChange()中到底该怎么写代码,传入参数Microsoft.Web.UI.WebControls.TreeViewSelectEventArgs e, e.NewNode好像也取不到ID。。。
chenxy2002 2003-12-08
  • 打赏
  • 举报
回复
当你FORMLOAD事件中加入第一层数据后,每次在SelectedIndexChange事件里加。得到当前点的节点然后查出它的子结点再加进来就行了呀。还有就是AutoPostBack设为TRUE。。
carolbaby 2003-12-08
  • 打赏
  • 举报
回复
我没有看到TreeView里面有AfterSelect()和BeforeSelect()的事件啊!B/S程序。
carolbaby 2003-12-08
  • 打赏
  • 举报
回复
???不明白,我打算初始化的时候只显示第一层的节点,然后用户点击哪个,再动态装载该节点下的那层节点。但是我不知道点击节点的时候会相应哪个事件?
brightheroes 2003-12-08
  • 打赏
  • 举报
回复
you can use event AfterSelect or event beforeSelect
selectedIndexChange is also ok
delphiseabird 2003-12-08
  • 打赏
  • 举报
回复
这是客户端的时间吧,在onload中怎么了

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧