OnSelectedNodeChanged事件不起作用

OnSelectedNodeChanged事件不起作用

问题描述:

这是我在.aspx代码,OnSelectedNodeChanged事件不起作用

<asp:TreeView ID="TreeView1" runat="server" 
OnSelectedNodeChanged="TreeView1_SelectedNodeChanged" 
ImageSet="Arrows" > 
</asp:TreeView> 
<asp:TextBox runat="server" ID="selectedNode"></asp:TextBox> 

在我.cs文件,

protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e) 
{ 
    selectedNode.Text = TreeView1.SelectedNode.Value; 
} 

但是,OnSelectedNodeChanged事件不工作,我想知道为什么。

我动态地绑定节点。我用这个link

+0

它没有射击? – andy 2013-04-22 08:47:29

+1

节点在哪里? – 2013-04-22 08:48:42

+1

我动态地绑定节点:)我用这个链接http://stackoverflow.com/questions/16139479/how-to-add-root-node-in-tree-view-dynamically-using-asp-net/16139564? nandynd = 1#comment23057324_16139564 – zey 2013-04-22 08:54:40

你是对的就不会在链接工作,因为它是写

root.SelectAction = TreeNodeSelectAction.Expand; 

而不是把它写//使用。选择

root.SelectAction = TreeNodeSelectAction.Select; 

它将工作。

TreeNodeSelectAction.Expand 
Toggles the node between expanded and collapsed. Raises the TreeNodeExpanded event or the TreeNodeCollapsed event, as appropriate. 

TreeNodeSelectAction.None 
Raises no events when a node is selected. 

TreeNodeSelectAction.Select 
Raises the SelectedNodeChanged event when a node is selected. 

TreeNodeSelectAction.SelectExpand 
Raises both the SelectedNodeChanged and TreeNodeExpanded events when a node is selected. Nodes are only expanded, never collapsed. 
+1

:),谢谢,完全有效! – zey 2013-04-22 09:16:29

这是一个旧的线程,但OnSelectedNodeChanged不会触发的另一个原因是如果您为给定节点设置了NavigateURL值。 虽然你可以使用一个技巧。删除NavigateURL属性并将节点“Value”属性设置为要链接的url,然后在代码后面的OnSelectedNodeChanged事件中触发,重定向到SelectedNode.Value属性的url。

HTH

戴夫

我有类似的问题。当我在动态生成节点时为节点删除NavigateURL时,会触发OnSelectedNodeChanged事件。