/// <summary> /// 设置节点状态 /// </summary> /// <param name="nodes">TreeListNodes</param> /// <param name="bcheck">是否选中</param> private void NodeCheck(TreeListNodes nodes, bool bcheck) { foreach (TreeListNode node in nodes) { node.Checked = bcheck; if (node.HasChildren) { NodeCheck(node.Nodes, bcheck); } } }
动态生成节点
var onevalue = new object[] { "0", "0", "0" }; DevExpress.XtraTreeList.Nodes.TreeListNode oneNode = treeList1.AppendNode(onevalue, null);//添加一级节点 for (int i = 1; i < 5; i++) { var teovalue = new object[] { i.ToString(), i.ToString(), i.ToString() }; this.treeList1.AppendNode(teovalue, oneNode); } for (int i = 10; i < 15; i++) { for (int j = 0; j < treeList1.Nodes[0].Nodes.Count; j++) { if (treeList1.Nodes[0].Nodes[j].GetValue("treeListColumn1").ToString() == "2") { var trridvalue = new object[] { (i * 10).ToString(), (i * 10).ToString(), (i * 10).ToString() }; this.treeList1.AppendNode(trridvalue, treeList1.Nodes[0].Nodes[j]); } } } for (int i = 16; i < 20; i++) { for (int j = 0; j < treeList1.Nodes[0].Nodes.Count; j++) { if (treeList1.Nodes[0].Nodes[j].GetValue("treeListColumn1").ToString() == "3") { var trridvalue = new object[] { (i * 10).ToString(), (i * 10).ToString(), (i * 10).ToString() }; this.treeList1.AppendNode(trridvalue, treeList1.Nodes[0].Nodes[j]); } } }
/// <summary> /// 根据列名和值查找节点 /// </summary> /// <param name="nodes"></param> /// <param name="colname"></param> /// <param name="colvalue"></param> /// <returns></returns> private TreeListNode GetNodeByCol(TreeListNodes nodes, string colname, string colvalue) { foreach (TreeListNode node in nodes) { string svalue = node.GetValue(colname).ToString(); if (svalue == colvalue) { return node; } if (node.HasChildren) { GetNodeByCol(node.Nodes, colname, colvalue); } } return null; }