有一个TreeView,我一点它的某个节点,它就自动选中该节点最上方的第一个节点!而不能选中我点的那个节点,这是咋回事?比如,一个学校的树,学校是根节点,一班、二班、三班...是第一级子节点,一班下面有张三、李四、王五...是第二级子节点。我点王五或者李四的时候,不管怎么样,它都自动选中张三!这是咋回事呢?我在别的页面里也有过这样的树,但是人家的就好用,这真是奇怪死了!

解决方案 »

  1.   

    我在TreeView1_SelectedNodeChanged事件里,查看TreeView1.SelectedNode.Text这个值,每次都是张三!
      

  2.   

    应该是刷新了加一个updatepanel树的绑定放在!IsPostBack中。。
      

  3.   

    我明明是把绑定放到!IsPostBack里面了,为啥还刷新呢?真TMD气死人啊!
      

  4.   


    这个updatepanel 在哪里啊?
      

  5.   

    你每个节点的Value值最好别一样,因为当你点击某个节点时,它是按valuePath来寻找的。。
    比如下面的一颗树        <asp:TreeView ID="TreeView2" runat="server" OnSelectedNodeChanged="TreeView2_SelectedNodeChanged"
                Width="149px">
                <Nodes>
                    <asp:TreeNode Text="新建节点1" Value="1" NavigateUrl="www.baidu.com">
                        <asp:TreeNode Text="新建节点2" Value="1">
                            <asp:TreeNode Text="新建节点3" Value="1"></asp:TreeNode>
                        </asp:TreeNode>
                    </asp:TreeNode>
                    <asp:TreeNode Text="新建节点4" Value="1">
                        <asp:TreeNode Text="新建节点5" Value="1">
                            <asp:TreeNode Text="新建节点6" Value="1"></asp:TreeNode>
                        </asp:TreeNode>
                    </asp:TreeNode>
                </Nodes>当你点击新建节点5这个节点时,它会按照valuePath来寻找这个节点,即1/1,而树会默认的从第一层按顺序找,那么这时就会找到节点2,因为节点2的valuePath也是1/1,所以每个节点的VALUE值最好设置成不一样