在asp.net中没有parentID动态添加Treeview节点 [英] Adding Treeview nodes dynamically without parentID in asp.net

查看:88
本文介绍了在asp.net中没有parentID动态添加Treeview节点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要使用TreeView控件的.NET应用程序。我的问题是我不想使用parentID列的东西动态地将节点添加到我的树视图。



我想使用datatbase中的Level列具有级别数字如

级别名称
5 级别 1
4 级别 2
3 级别 3
2 级别 4
1 级别 5



所以我希望有一个树视图,其中最高编号为父节点,如下所示

 Level1 
Level2
Level3
Level4
Level5



这是我的代码:

  foreach (DataRow level1 中的DataRow  ds.Tables [ 0 ]。行)
{
// if(!string.IsNullOrEmpty(level1DataRow [Node Level]。ToString()))
{
TreeNode parentTreeNode = new TreeNode();
parentTreeNode.Text = level1DataRow [ Level]。ToString()+ level1DataRow [< span class =code-string>
名称]。ToString();
parentTreeNode.Value = level1DataRow [ Level]。ToString();


parentTreeNode.SelectAction = TreeNodeSelectAction.SelectExpand;

parentTreeNode.Expand();

parentTreeNode.Selected = true ;

this .TreeView1.Nodes.Add(parentTreeNode);


GetChildRows(parentTreeNode,parentTreeNode.Value);
TreeView1.SelectedNode.Selected = false ;

db.Close();



其他获取孩子的方法



  foreach (DataRow row  in  ds.Tables [ 0  ] .Rows)
{
int child_level = Convert.ToInt32(row [ 节点级别]。ToString());
if (child_level < nodeLevel&& child_level!= nodeLevel)
{
TreeNode childTreeNode = new TreeNode();

childTreeNode.Text = row [ Level]。ToString() + row [ 名称]。ToString();

childTreeNode.Value = row [ Level]。ToString() ;



childTreeNode.SelectAction = TreeNodeSelectAction.SelectExpand;


parent.ChildNodes.Add(childTreeNode);

GetChildRows(childTreeNode,childTreeNode.Value);


}

}



请告诉我怎么做?

解决方案

检查使用C#和VB.Net在ASP.Net中使用TreeView绑定和显示分层数据 [ ^ ]

NET application where I need to use a TreeView Control. My problem is that I do not want to use parentID column thing to add nodes dynamically to my treeview.

I want to use "Level" Column from datatbase which has level numbers like

Level    Name
5        Level 1
4        Level 2
3        Level 3
2        Level 4
1        Level 5


So I want to have a tree view which has the highest number as parent node like this

Level1
  Level2
     Level3
       Level4
         Level5


Here is my code:

foreach (DataRow level1DataRow in ds.Tables[0].Rows)
               {
                  // if (!string.IsNullOrEmpty(level1DataRow["Node Level"].ToString()))
                   {
                       TreeNode parentTreeNode = new TreeNode();
                       parentTreeNode.Text = level1DataRow["Level"].ToString() + level1DataRow["Name"].ToString();
                       parentTreeNode.Value = level1DataRow["Level"].ToString();


                       parentTreeNode.SelectAction = TreeNodeSelectAction.SelectExpand;

                       parentTreeNode.Expand();

                       parentTreeNode.Selected = true;

                       this.TreeView1.Nodes.Add(parentTreeNode);


                       GetChildRows(parentTreeNode,parentTreeNode.Value);
                       TreeView1.SelectedNode.Selected = false;

                       db.Close();


other method to get child

foreach (DataRow row in ds.Tables[0].Rows)
           {
               int child_level = Convert.ToInt32(row["Node Level"].ToString());
               if(child_level < nodeLevel && child_level != nodeLevel)
               {
                   TreeNode childTreeNode = new TreeNode();

                   childTreeNode.Text = row["Level"].ToString() + row["Name"].ToString();

                   childTreeNode.Value = row["Level"].ToString();



                   childTreeNode.SelectAction = TreeNodeSelectAction.SelectExpand;


                   parent.ChildNodes.Add(childTreeNode);

                   GetChildRows(childTreeNode, childTreeNode.Value);


               }

           }


Please let me know how to do this?

解决方案

check Bind and display hierarchical data with TreeView in ASP.Net using C# and VB.Net[^]


这篇关于在asp.net中没有parentID动态添加Treeview节点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆