public void RefreshTemplatesNode()
        {
            this.TemplatesNode.Nodes.Clear();
            this.TemplatesNode.ContextMenu = new ContextMenu(new MenuItem[]
            {
                new MenuItem("New Template...",  new EventHandler(NewTemplateMenuItem_Click))
            });

            if (!this.Project.Templates.IsNullOrEmpty())
            {
                foreach (Template template in this.Project.Templates.OrderBy(o => o.XsltHintPath))
                {
                    TemplateTreeNode node = new TemplateTreeNode(this, template);

                    node.GenerateClick += new TemplateTreeNode.GenerateEventHandler((s, e) =>
                    {
                        if (TemplateGenerateClicked != null)
                            TemplateGenerateClicked(s, e);
                    });
                    this.TemplatesNode.Nodes.Add(node);
                }
            }
        }