Пример #1
0
        public override void Refresh()
        {
            if (_solution == null || _solutionNode == null)
            {
                return;
            }
            if (InvokeRequired)
            {
                BeginInvoke(new Action(Refresh));
                return;
            }
            base.Refresh();

            ProjectTreeNode projectTreeNode;

            _solutionNode.Text = _solution.Name;
            foreach (CrcsProject proj in _solution.Projects)
            {
                projectTreeNode = proj.TreeNode;
                if (projectTreeNode == null)
                {
                    projectTreeNode = new ProjectTreeNode(proj);
                    _nodes.Add(projectTreeNode);
                    var propNode = new TreeNode("Properties", 6, 6)
                    {
                        Tag = proj
                    };
                    projectTreeNode.Nodes.Add(propNode);
                    _solutionNode.Nodes.Add(projectTreeNode);
                    proj.TreeNode = projectTreeNode;
                }
                projectTreeNode.RefreshIcon();
                RefreshProjectNode(projectTreeNode);
            }
            foreach (string missingProj in _solution.MissingProjects)
            {
                if (ProjectNodes.FirstOrDefault(x => x.FileSystemPath == missingProj) != null)
                {
                    continue;
                }
                projectTreeNode = new ProjectTreeNode(new MissingItem(missingProj, true, null), _iconManager);
                _nodes.Add(projectTreeNode);
                _solutionNode.Nodes.Add(projectTreeNode);
            }
            if (!_solutionNode.IsExpanded)
            {
                _solutionNode.Expand();
            }
        }
Пример #2
0
 public void ExpandTreeNodes(IEnumerable <string> fileSystemPaths)
 {
     if (fileSystemPaths == null)
     {
         return;
     }
     foreach (string fileSystemPath in fileSystemPaths)
     {
         string          path     = fileSystemPath;
         ProjectTreeNode treeNode =
             _nodes.FirstOrDefault(x => x.FileSystemPath.Equals(path, StringComparison.OrdinalIgnoreCase));
         if (treeNode == null)
         {
             continue;
         }
         treeNode.Expand();
     }
 }