/// <summary> /// TreeView展开事件创建子节点,折叠事件进入展开事件将:EnableClientScript设置为false /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void TreeViewSilkItems_TreeNodeExpanded(object sender, TreeNodeEventArgs e) { if (e.Node.ChildNodes.Count == 0 && e.Node.Expanded.Value == true) { CreateChildNodes(e.Node); e.Node.Expand(); } if (e.Node.ChildNodes.Count > 0 && e.Node.Expanded.Value == false) { e.Node.Collapse(); } } protected void TreeViewSilkItems_TreeNodeCollapsed(object sender, TreeNodeEventArgs e) { if (e.Node.Expanded.Value == false) { e.Node.Collapse(); } else { e.Node.Expand(); } } /// <summary> /// 创建制丝项目节点 /// </summary> private void CreateChildNodes(TreeNode treeNode) { DataRow[] drs = dtSource.Select("FATHERID='" + treeNode.Value + "'"); if (drs.Length > 0) { for (int i = 0; i < drs.Length; i++) { TreeViewSilkItems.EnableClientScript = false; TreeNode tnValue = new TreeNode(drs[i]["MODELNAME"].ToString(), drs[i]["MODELID"].ToString()); tnValue.PopulateOnDemand = drs[i]["DEPTH"].ToString() != "3"; if (drs[i]["DEPTH"].ToString() == "3") { tnValue.ShowCheckBox = true; } treeNode.ChildNodes.Add(tnValue); } }
TreeView动态创建节点
最新推荐文章于 2020-03-18 17:03:02 发布
本文详细阐述了TreeView组件在节点展开与折叠事件中的行为,包括如何在节点展开时创建子节点,以及在节点折叠时的操作。通过实例代码展示了如何在节点展开时检查节点是否已具备子节点,并在必要时调用创建子节点的方法;同样地,在节点折叠时根据节点状态进行相应的折叠或展开操作。
8803

被折叠的 条评论
为什么被折叠?



