Esempio n. 1
0
        private void AppendTreeNode(IProjectTree pTree, TreeNode pParentNode, Guid nodeObjectGuid)
        {
            TreeNode myNode = null;
            int      iCheckState;
            string   nodeName = string.Empty;

            if (pTree.IsGroup(nodeObjectGuid))
            {
                nodeName = pTree.GetItemName(nodeObjectGuid);
                if (this.treeView1.Nodes.Count == 0 || pParentNode == null)
                {
                    TreeNode node = new TreeNode(nodeName, 0, 0);
                    node.Tag = nodeObjectGuid;
                    this.treeView1.Nodes.Add(node);

                    int count = this.treeView1.Nodes.Count;
                    myNode = this.treeView1.Nodes[count - 1];
                }
                else
                {
                    TreeNode node = new TreeNode(nodeName, 0, 0);
                    node.Tag = nodeObjectGuid;
                    pParentNode.Nodes.Add(node);

                    int count = pParentNode.Nodes.Count;
                    myNode = pParentNode.Nodes[count - 1];
                }

                LoopSubNode(myNode, pTree, nodeObjectGuid);
            }
            else
            {
                nodeName = pTree.GetItemName(nodeObjectGuid);
                if (this.treeView1.Nodes.Count == 0 || pParentNode == null)
                {
                    TreeNode node = new TreeNode(nodeName, 1, 1);
                    node.Tag = nodeObjectGuid;
                    this.treeView1.Nodes.Add(node);

                    int count = this.treeView1.Nodes.Count;
                    myNode = this.treeView1.Nodes[count - 1];
                }
                else
                {
                    TreeNode node = new TreeNode(nodeName, 1, 1);
                    node.Tag = nodeObjectGuid;
                    pParentNode.Nodes.Add(node);

                    int count = pParentNode.Nodes.Count;
                    myNode = pParentNode.Nodes[count - 1];
                }
            }

            iCheckState = pTree.GetVisibility(nodeObjectGuid);
            SetNodeCheckState(myNode, iCheckState);
        }