Пример #1
0
        void AddRecursiveNamespace(ICodeNamespace cns, List <ICodeType> types)
        {
            foreach (ICodeType type in cns.Types)
            {
                types.Add(type);
                AddRecursive(type, types);
            }

            foreach (ICodeNamespace ncns in cns.Namespaces)
            {
                AddRecursiveNamespace(ncns, types);
            }
        }
Пример #2
0
        void AddElement(ICodeElement elem, TreeNode parent)
        {
            ICodeNamespace cns = elem as ICodeNamespace;

            if (cns != null && cns.ElementCount == 0)
            {
                return;
            }
            parent     = parent.Nodes.Add(elem.ToString());
            parent.Tag = elem;

            parent.ImageIndex = parent.SelectedImageIndex = ServiceHost.ImageListProvider[elem];

            ICodeContainerElement icc = elem as ICodeContainerElement;

            if (icc != null)
            {
                foreach (ICodeElement ce in icc.Elements)
                {
                    AddElement(ce, parent);
                }
            }
        }