在树视图中获取父节点和子节点值 [英] Getting parent node and child node value in treeview
本文介绍了在树视图中获取父节点和子节点值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家好,
我有一个带有根节点,子节点和子节点的树视图。点击一个子节点,我需要获得该节点弹出窗口中的值及其父节点值。我会。非常感谢。非常感谢。谢谢。
Hi all,
I have a treeview with a root node,a child node and subchild nodes.On click of a subchild node I need to get that node value and its parent node value in a popup.I will .Any help will really appreciated .Thanks in advance.
*Root Node
1.child node 1
*(subchild node 1)
*(subchild node 2)
2.child node 2
*(subchild node 1)
*(subchild node 2)
开子节点单击我需要在弹出扩展器中获取节点值。但是它显示为空。
我尝试过:
On subchild node click I need to get the node values in popup extender .However it is showing null.
What I have tried:
<asp:TreeView ID="TreeView1" OnSelectedNodeChanged="TreeView1_SelectedNodeChanged" EnableClientScript="true" PopulateNodesFromClient="true" OnTreeNodePopulate="calltree" Font-Size="8pt" runat="server" ShowLines="True" HoverNodeStyle-Font-Underline="True" SelectedNodeStyle-Font-Bold="True" ParentNodeStyle-ForeColor="Black">
<Nodes>
<asp:TreeNode Text="Chart Of Cars" Selected="true" SelectAction="Expand" PopulateOnDemand="true"/>
</Nodes>
</asp:TreeView>
public void calltree(object sender, TreeNodeEventArgs e)
{
switch (e.Node.Depth)
{
case 0:
HeaderTitle(e.Node);
break;
case 1:
LinkURL(e.Node);
break;
default:
break;
}
}
public void HeaderTitle(TreeNode node)
{
DataSet ds_ParentNode = objcon.GetDataSet("select distinct ProfileID,profilename from profile
");
foreach (DataRow row in ds_ParentNode.Tables[0].Rows)
{
TreeNode newNode = new TreeNode();
newNode.Text = row["ProfileID"].ToString() + ' ' + row["profilename"].ToString();
newNode.Value = row["ProfileID"].ToString();
newNode.Expanded = false;
newNode.SelectAction = TreeNodeSelectAction.Expand;
newNode.PopulateOnDemand = true;
node.ChildNodes.Add(newNode);
}
}
public void LinkURL(TreeNode node)
{
DataSet ds_ParentNode = objcon.GetDataSet("select distinct ProfileID,profilename from profile
");
foreach (DataRow row in ds_ParentNode.Tables[0].Rows)
{
TreeNode newNode = new TreeNode();
newNode.Text = row["ProfileID"].ToString() + ' ' + row["profilename"].ToString();
newNode.Value = row["ProfileID"].ToString();
newNode.ImageUrl = "~/images/office2003_contacts.gif";
newNode.Expand();
newNode.Expanded = true;
newNode.PopulateOnDemand = false;
node.ChildNodes.Add(newNode);
}
}
<pre> protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
{
int index = TreeView1.Nodes.IndexOf(TreeView1.SelectedNode);
TreeView1.SelectedNode.Selected = true;
if (TreeView1.SelectedNode.Value != "")
{
lbl_supname.Text = TreeView1.SelectedNode.Value;
lbl_drugname.Text = "";
mpe_First.Show();
pnl_First.Visible = true;
UpdatePanel1.Update();
UpdatePanel1_1.Update();
}
else
{
mpe_First.Hide();
//UpdatePanel1.Update();
pnl_First.Visible = false;
UpdatePanel1.Update();
}
}
推荐答案
您可以递归地找到父节点使用节点的父属性:
TreeNode.Parent属性(System.Web.UI.WebControls) [ ^ ]
You can recursively locate parent nodes using a node's "Parent" property:
TreeNode.Parent Property (System.Web.UI.WebControls)[^]
这篇关于在树视图中获取父节点和子节点值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文