TreeView Web 服务器控件事件

更新:2007 年 11 月

TreeView Web 服务器控件提供了几个可进行编程的事件。这使您能够在发生事件时运行自定义例程。

事件

只有用户通过一些操作(如选择、展开或折叠节点)与控件交互时,才会引发 TreeView 控件事件。如果以编程方式调用选择、展开或折叠方法,则不会引发这些事件。例如,如果调用 Expand 方法,将不会引发任何事件。

下表描述了 TreeView 控件支持的事件。

事件

说明

TreeNodeCheckChanged

TreeView 控件的复选框发送到服务器的状态更改时发生。每个 TreeNode 对象发生变化时都将发生一次。

SelectedNodeChanged

TreeView 控件中选定某个节点时发生。

TreeNodeExpanded

TreeView 控件中展开某个节点时发生。

TreeNodeCollapsed

TreeView 控件中折叠某个节点时发生。

TreeNodePopulate

TreeView 控件中展开某个 PopulateOnDemand 属性设置为 true 的节点时发生。

TreeNodeDataBound

将数据项绑定到 TreeView 控件中的某个节点时发生。

示例

SelectedNodeChanged 事件

下面的代码示例演示如何处理 SelectedNodeChanged 事件以及如何访问引发此事件的 SelectedNode 属性。此示例将 MyLabel 的文本设置为 SelectedNodeToolTip 属性文本。

Protected Sub TreeView1_SelectedNodeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TreeView1.SelectedNodeChanged
    MyLabel.Text = TreeView1.SelectedNode.ToolTip

End Sub
protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
{
    MyLabel.Text = TreeView1.SelectedNode.ToolTip;
}

TreeNodeExpanded 事件和 TreeNodeCollapsed 事件

下面的代码示例演示如何处理 TreeNodeCollapsed 事件和 TreeNodeExpanded 事件,以及如何访问折叠或展开的 TreeNode 对象。

Protected Sub TreeView1_TreeNodeCollapsed(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.TreeNodeEventArgs) Handles TreeView1.TreeNodeCollapsed
    MyLabel.Text = "You collapsed the " & e.Node.Value & " node."
End Sub

Protected Sub TreeView1_TreeNodeExpanded(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.TreeNodeEventArgs) Handles TreeView1.TreeNodeExpanded
    MyLabel.Text = "You expanded the " & e.Node.Value & " node."
End Sub
protected void TreeView1_TreeNodeCollapsed(object sender, TreeNodeEventArgs e)
{
    MyLabel.Text = "You collapsed the " + e.Node.Value + " node.";
}
protected void TreeView1_TreeNodeExpanded(object sender, TreeNodeEventArgs e)
{
    MyLabel.Text = "You expanded the " + e.Node.Value + " node.";
}

TreeNodePopulate 事件

下面的代码示例演示如何处理 TreeNodePopulate 事件,以及如何以编程方式将一个新的 TreeNode 对象添加到引发该事件的节点的 ChildNodes 集合中。

Protected Sub TreeView1_TreeNodePopulate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.TreeNodeEventArgs) Handles TreeView1.TreeNodePopulate
    e.Node.ChildNodes.Add(New TreeNode("New Node Populated on Demand"))
End Sub
protected void TreeView1_TreeNodePopulate(object sender, TreeNodeEventArgs e)
{
    e.Node.ChildNodes.Add(new TreeNode("New Node Populated on Demand"));
}

请参见

概念

填充 TreeView Web 服务器控件中的树节点

自定义 TreeView Web 服务器控件的外观

TreeView Web 服务器控件中的选择、导航和复选框

将数据绑定到 TreeView Web 服务器控件

参考

TreeView Web 服务器控件概述