树节点SelectNodeChanged事件c#

本文关键字:事件 SelectNodeChanged 树节点 | 更新日期: 2023-09-27 18:14:35

问题:我在Treeview列表中有5个节点,包括子节点。每当我选择一个节点时,它应该在组合框中自动显示节点的名称,而无需按下按钮。

当我使用ONselectednodechanged事件时,它只触发一次。因此,当我第一次点击节点时,它会触发事件,但之后它什么也不做。

有人能给我一些建议吗?我想当我点击它时,它会自动在组合框中显示节点的名称。

c#,ASP.net

以下是我迄今为止写的内容:

protected void nav_tree_items_SelectedNodeChanged(object sender, EventArgs e)
        {           
            if (nav_view_add.Visible == true)
            {
                panel_helper.GroupingText = "Add";
                nav_multi.SetActiveView(nav_view_add); //set active view
                nav_btn_save_add.CausesValidation = true;
                DataRow[] row1 = TableClass.MainTable.Select("ItemId = " + nav_tree_items.SelectedValue);
                nav_dd_parent.SelectedValue = row1[0]["ItemId"].ToString().Trim();
            }

当程序执行时,它甚至不会使面板可见。

<asp:TreeView ID="nav_tree_items" runat="server" Height="100%" ShowLines="True" 
                                    Width="123%" onselectednodechanged="nav_tree_items_SelectedNodeChanged">
                                    <HoverNodeStyle CssClass="hoverTreeItem" />

树节点SelectNodeChanged事件c#

当我使用TreeView时,我使用"AfterSelect"事件。在[Design]模式下双击TreeView控件可以很容易地生成存根。然后,您可以按照自己的意愿使用数据来执行以下操作(MessageBox只是一个示例(。

    private void naviTree_AfterSelect(object sender, TreeViewEventArgs e)
    {
        MessageBox.Show("The node you just selected is [" + e.Node.ToString() + "]");
    }

希望这能有所帮助。