编写当在treeview控件中选中某个treenode控件时触发运行的代码
当在你的asp.net页面中添加一个treeview控件的时候,你可能想要编写一些代码,当在这个treeview控件中选中了一个节点项时,触发运行这段代码。treeview控件提供了一种事件,你可以为之编写相应的事件处理代码。这个事件为你提供了对被选中的节点,以及在选中此节点之前访问者所在的节点进行相关处理的可能。
这个asp.net页面将通过一个treeview控件以层次结构显示一个部门的列表。当访问者选中一个节点时,他将看到所选中节点的ID,以及在选中此节点之前他所在的节点的ID,这些信息是通过一个label控件的text属性来回显给访问者的。
<iecontrols:treeview
id="tvbasic"
onseletedindexchanged="node_selected"
autopostback="true"
runat="server"
>
请注意,其中的autopostback属性设置为true。这意味着当有一个treenode控件被选中时,本页面将被提交到服务器进行处理。当一个节点的选中状态发生改变时所触发运行的过程通过onselectedindexchange属性来指定。
在空上treeview控件,以像下面这样的方式定义了一引起treenodw控件:
<iecontrols:treenode text="设计站点"/>
当这个treeview控件中的节点选中状态发生改变时,将触发运行下列过程:
sub node_selected(s as object, e as treeviewselecteventargs)
lblmessage.text="你选择了:"&e.newnode.tostring()
end sub
编写当展开一个treenode时所触发运行的代码
当访问者展开一个treeview控件中的一个节点时,你可以需要运行一些代码。例如,你可能会在treeview控件中所使用的控件内定义页面。因此,当展开treeview中的一个treenode控件时,整个treeview控件的大小将会发生改变。在这种情况下,当发生节点展开的事件时,你将需要运行一段代码来重新调整而面中其余部分的尺寸。
示例:
当访问者选中了一个具有子控件的treenode控件时,这个控件将会展开。在这个页面中,每当展开一个treenode节点时,访问者都将会看到一条消息。
<iecontrols:treeview
id="tvbaxic"
onexpand="Node_expand"
autopostback="true"
runat="server"
>
请注意onexpand属性的使用。当有一个节点展开时,将会触发运行这个属性设定的那个过程。此外,由于qutopostback属性设为true,因而当有一个节点展开时,将会立即触发这一事件。
编写当treenode控件折叠时触发运行的代码
如果访问者在treeview控件中选中了某个节点而使其处于展开状态的话,你可以通过再次选以这个节点而将其折叠。当一个treenode控件折叠时,如果你想触发运行一段代码,则可以使用相应treeview控件的oncollapse事件来实现如:
<iecontrols:treeview
id="tvbaxic"
oncollapse="Node_collapse"
autopostback="true"
runat="server"
>
注意oncollapse属性的使用,当treenode折叠时,运行node_collpase子过程,剩下的事情大家可以自己完成了。