diff --git a/src/Main/Base/Project/Dom/ClassBrowser/BaseTypesTreeNode.cs b/src/Main/Base/Project/Dom/ClassBrowser/BaseTypesTreeNode.cs index 5780db317f..386242a9c0 100644 --- a/src/Main/Base/Project/Dom/ClassBrowser/BaseTypesTreeNode.cs +++ b/src/Main/Base/Project/Dom/ClassBrowser/BaseTypesTreeNode.cs @@ -6,6 +6,7 @@ using System.Linq; using ICSharpCode.Core; using ICSharpCode.NRefactory.TypeSystem; using ICSharpCode.NRefactory.TypeSystem.Implementation; +using ICSharpCode.TreeView; using ICSharpCode.SharpDevelop.Parser; namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser @@ -36,6 +37,12 @@ namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser } } + public override SharpTreeNode FindChildNodeRecursively(Func predicate) + { + // Don't search children of this node, because they are repeating type nodes from elsewhere + return null; + } + public bool HasBaseTypes() { return baseTypes.Count > 0; diff --git a/src/Main/Base/Project/Dom/ModelCollectionTreeNode.cs b/src/Main/Base/Project/Dom/ModelCollectionTreeNode.cs index 3aa1f0565d..fc1ab8ca50 100644 --- a/src/Main/Base/Project/Dom/ModelCollectionTreeNode.cs +++ b/src/Main/Base/Project/Dom/ModelCollectionTreeNode.cs @@ -105,7 +105,7 @@ namespace ICSharpCode.SharpDevelop.Dom LazyLoading = true; } - public SharpTreeNode FindChildNodeRecursively(Func predicate) + public virtual SharpTreeNode FindChildNodeRecursively(Func predicate) { if (predicate == null) return null;