TreeView Web 服务器控件提供了几个可进行编程的事件
这使您能够在发生事件时运行自定义例程
一事件
只有用户通过一些操作(如选择展开或折叠节点)与控件交互时才会引发 TreeView 控件事件如果以编程方式调用选择展开或折叠方法则不会引发这些事件例如如果调用 Expand 方法将不会引发任何事件
下表描述了 TreeView 控件支持的事件
事件 说明
TreeNodeCheckChanged 当 TreeView 控件的复选框发送到服务器的状态更改时发生每个 TreeNode
对象发生变化时都将发生一次
SelectedNodeChanged 在 TreeView 控件中选定某个节点时发生
TreeNodeExpanded 在 TreeView 控件中展开某个节点时发生
TreeNodeCollapse 在 TreeView 控件中折叠某个节点时发生
TreeNodePopulate 在 TreeView 控件中展开某个 PopulateOnDemand 属性设置为 true 的节点时发生
TreeNodeDataBound 将数据项绑定到 TreeView 控件中的某个节点时发生
二示例
SelectedNodeChanged 事件
下面的代码示例演示如何处理 SelectedNodeChanged 事件以及如何访问引发此事件的 SelectedNode 属性此示例将 MyLabel 的文本设置为 SelectedNode 的 ToolTip 属性文本
protected void TreeView_SelectedNodeChanged(object sender EventArgs e)
{
MyLabelText = TreeViewSelectedNodeToolTip;
}
TreeNodeExpanded 事件和 TreeNodeCollapsed 事件
下面的代码示例演示如何处理 TreeNodeCollapsed 事件和 TreeNodeExpanded 事件以及如何访问折叠或展开的 TreeNode 对象
protected void TreeView_TreeNodeCollapsed(object sender TreeNodeEventArgs e)
{
MyLabelText = You collapsed the + eNodeValue + node;
}
protected void TreeView_TreeNodeExpanded(object sender TreeNodeEventArgs e)
{
MyLabelText = You expanded the + eNodeValue + node;
}
TreeNodePopulate 事件
下面的代码示例演示如何处理 TreeNodePopulate 事件以及如何以编程方式将一个新的 TreeNode 对象添加到引发该事件的节点的 ChildNodes 集合中
protected void TreeView_TreeNodePopulate(object sender TreeNodeEventArgs e)
{
eNodeChildNodesAdd(new TreeNode(New Node Populated on Demand));
}