在asp.net中没有parentID动态添加Treeview节点 [英] Adding Treeview nodes dynamically without parentID in asp.net
本文介绍了在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屋!
查看全文