diff --git a/src/AddIns/BackendBindings/XamlBinding/XamlBinding/XamlResolver.cs b/src/AddIns/BackendBindings/XamlBinding/XamlBinding/XamlResolver.cs
index a4e06f6bec..dc5244a52a 100644
--- a/src/AddIns/BackendBindings/XamlBinding/XamlBinding/XamlResolver.cs
+++ b/src/AddIns/BackendBindings/XamlBinding/XamlBinding/XamlResolver.cs
@@ -3,19 +3,10 @@
using System;
using System.Collections.Generic;
-using System.ComponentModel;
using System.Linq;
-using System.Runtime.Remoting.Lifetime;
-using System.Threading;
using ICSharpCode.NRefactory;
-using ICSharpCode.NRefactory.CSharp.Resolver;
-using ICSharpCode.NRefactory.Editor;
using ICSharpCode.NRefactory.Semantics;
using ICSharpCode.NRefactory.TypeSystem;
-using ICSharpCode.NRefactory.TypeSystem.Implementation;
-using ICSharpCode.NRefactory.Xml;
-using ICSharpCode.SharpDevelop.Parser;
-using ICSharpCode.XmlEditor;
namespace ICSharpCode.XamlBinding
{
@@ -37,12 +28,7 @@ namespace ICSharpCode.XamlBinding
{
string prefix, memberName;
string name = ParseName(expression, out prefix, out memberName);
- string namespaceUrl;
-
- if (prefix == "")
- namespaceUrl = context.ActiveElement.Namespace;
- else
- namespaceUrl = context.ActiveElement.ResolvePrefix(prefix);
+ string namespaceUrl = context.ActiveElement.LookupNamespace(prefix);
if (string.IsNullOrEmpty(memberName)) {
IType type = ResolveType(namespaceUrl, context.ActiveElement.LocalName);
IMember member = type.GetMembers(m => m.Name == name).FirstOrDefault();
diff --git a/src/AddIns/BackendBindings/XamlBinding/XamlBinding/XamlUnresolvedFile.cs b/src/AddIns/BackendBindings/XamlBinding/XamlBinding/XamlUnresolvedFile.cs
index efc98ac504..2f4ddbcf4f 100644
--- a/src/AddIns/BackendBindings/XamlBinding/XamlBinding/XamlUnresolvedFile.cs
+++ b/src/AddIns/BackendBindings/XamlBinding/XamlBinding/XamlUnresolvedFile.cs
@@ -111,14 +111,17 @@ namespace ICSharpCode.XamlBinding
public static ITypeReference CreateTypeReference(string @namespace, string localName)
{
- if (@namespace.StartsWith("clr-namespace:", StringComparison.OrdinalIgnoreCase)) {
+ if (@namespace == null)
+ return new UnknownType(null, localName);
+ if (@namespace.StartsWith("clr-namespace:", StringComparison.OrdinalIgnoreCase))
return CreateClrNamespaceTypeReference(@namespace.Substring("clr-namespace:".Length), localName);
- }
return new XamlTypeReference(@namespace, localName);
}
public static ITypeReference CreateClrNamespaceTypeReference(string @namespace, string localName)
{
+ if (@namespace == null)
+ return new UnknownType(null, localName);
int assemblyNameIndex = @namespace.IndexOf(";assembly=", StringComparison.OrdinalIgnoreCase);
IAssemblyReference asm = DefaultAssemblyReference.CurrentAssembly;
if (assemblyNameIndex > -1) {
diff --git a/src/Main/Base/Project/Dom/ClassBrowser/WorkspaceTreeNode.cs b/src/Main/Base/Project/Dom/ClassBrowser/WorkspaceTreeNode.cs
index 6a2187b380..d49dd6e8fd 100644
--- a/src/Main/Base/Project/Dom/ClassBrowser/WorkspaceTreeNode.cs
+++ b/src/Main/Base/Project/Dom/ClassBrowser/WorkspaceTreeNode.cs
@@ -4,10 +4,10 @@
using System;
using System.Collections.Generic;
using System.Windows.Media;
-using ICSharpCode.Core.Presentation;
using ICSharpCode.NRefactory.TypeSystem;
using ICSharpCode.NRefactory.Utils;
using ICSharpCode.TreeView;
+using ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser
{
diff --git a/src/Main/SharpDevelop/Dom/ClassBrowser/ClassBrowserTreeNodesFactory.cs b/src/Main/SharpDevelop/Dom/ClassBrowser/ClassBrowserTreeNodesFactory.cs
deleted file mode 100644
index 1d6a7885e4..0000000000
--- a/src/Main/SharpDevelop/Dom/ClassBrowser/ClassBrowserTreeNodesFactory.cs
+++ /dev/null
@@ -1,47 +0,0 @@
-// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
-// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
-
-using System;
-using System.Collections.Generic;
-using System.Windows.Media;
-using ICSharpCode.NRefactory.Utils;
-using ICSharpCode.TreeView;
-using ICSharpCode.SharpDevelop.Project;
-
-namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser
-{
- public class ClassBrowserTreeNodesFactory : ITreeNodeFactory
- {
- public Type GetSupportedType(object model)
- {
- if (model is ISolution)
- return typeof(ISolution);
- if (model is IProject)
- return typeof(IProject);
- if (model is INamespaceModel)
- return typeof(INamespaceModel);
- if (model is ITypeDefinitionModel)
- return typeof(ITypeDefinitionModel);
- if (model is IMemberModel)
- return typeof(IMemberModel);
- return null;
- }
-
- public SharpTreeNode CreateTreeNode(object model)
- {
- if (model is ISolution)
- return new SolutionTreeNode((ISolution)model);
- if (model is IProject)
- return new ProjectTreeNode((IProject)model);
- if (model is INamespaceModel)
- return new NamespaceTreeNode((INamespaceModel)model);
- if (model is ITypeDefinitionModel)
- return new TypeDefinitionTreeNode((ITypeDefinitionModel)model);
- if (model is IMemberModel)
- return new MemberTreeNode((IMemberModel)model);
- return null;
- }
- }
-}
-
-
diff --git a/src/Main/SharpDevelop/SharpDevelop.csproj b/src/Main/SharpDevelop/SharpDevelop.csproj
index cf42266e1d..396f415c43 100644
--- a/src/Main/SharpDevelop/SharpDevelop.csproj
+++ b/src/Main/SharpDevelop/SharpDevelop.csproj
@@ -107,7 +107,7 @@
Project\Build\MSBuildEngine\ExtendedBinaryReader.cs
-
+