Beispiel #1
1
        private void book_AccountAdded(object sender, Events.AccountAddedEventArgs e)
        {
            var a = e.Account;

            var node = new TreeNode  // TODO: Determine the icon from the metadata.
            {
                Text = a.Name,
                Name = a.Name,
                Tag = a,
            };
            this.nodeLookup.Add(a, node);

            // TODO: Insert the book in the correct order.
            if (a.ParentAccount != null)
            {
                var parentNode = this.nodeLookup[a.ParentAccount];
                parentNode.Nodes.Add(node);
            }
            else
            {
                this.tree.Nodes.Add(node);
            }
        }
Beispiel #2
1
        private TreeNode[] BuildTreeNodes(Account parentAccount, ILookup<Account, Account> accounts)
        {
            var nodes = new List<TreeNode>();

            foreach (var a in accounts[parentAccount])  // TODO: Order by "order" in the metadata.
            {
                var node = new TreeNode  // TODO: Determine the icon from the metadata.
                {
                    Text = a.Name,
                    Name = a.Name,
                    Tag = a,
                };
                this.nodeLookup.Add(a, node);

                node.Nodes.AddRange(BuildTreeNodes(a, accounts));

                nodes.Add(node);
            }

            return nodes.ToArray();
        }