如何通过设定值来选择节点的aspx树视图 [英] How to set selected node by value in aspx Tree view

查看:179
本文介绍了如何通过设定值来选择节点的aspx树视图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何通过设定值来选择节点 ASPX 树视图我尝试以下code,但这是工作树的第一层

How to set selected node by value in aspx Tree view I tried the following code but this is working first level of the tree

foreach (TreeNode node in tvLocations.Nodes[0].ChildNodes)
{
    if (node.Value == LocId.ToString())
    {
        node.Select();
    }
}

我也试过这种

tvLocations.SelectedNode.Value = LocId.ToString();
tvLocations.SelectedNode.Value = LocId.ToString();
tvLocations.SelectedNode.Select(); 

但无法正常工作。

but not working.

我想是这样,因为我们在下拉菜单中设置

I want something like as we set in dropdown

dropdown1.selectedValue="5";

请帮我

推荐答案

一个很好的递归函数的伎俩:

A nice recursive function does the trick:

<asp:textbox id="txtFind" runat="server" />
<asp:button id="btnFind" runat="server" text="Go" onclick="btnFind_Click" />
<asp:treeview id="tvHierarchy" runat="server" datasourceid="dsHierarchy" nodestyle-cssclass="treeviewnode" parentnodestyle-cssclass="parentnode" selectednodestyle-cssclass="selectednode" autogeneratedatabindings="false">
    <databindings>
         <asp:treenodebinding datamember="employee" textfield="fullname" populateondemand="true" valuefield="login" selectaction="SelectExpand" />
    </databindings>
</asp:treeview>

protected void btnFind_Click(object sender, EventArgs e) {
    SelectNodeByValue(tvHierarchy.Nodes[0], txtFind.Text); 
}

protected void SelectNodeByValue(TreeNode Node, string ValueToSelect) {
    foreach (TreeNode n in Node.ChildNodes) {
        if (n.Value == ValueToSelect) { n.Select(); } else { SelectNodeByValue(n, ValueToSelect); } 
    }
}

这篇关于如何通过设定值来选择节点的aspx树视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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