Browse Source

WPF designer now looks in project references for assemblies when opening the designer.

pull/14/head
Matt Ward 15 years ago
parent
commit
be8c299f6a
  1. 28
      src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/MyTypeFinder.cs

28
src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/MyTypeFinder.cs

@ -33,17 +33,31 @@ namespace ICSharpCode.WpfDesign.AddIn
} }
return null; return null;
} else { } else {
// Load any other assembly from the solution. Assembly assembly = FindAssemblyInProjectReferences(name);
foreach(var project in ProjectService.OpenSolution.Projects) { if (assembly != null) {
if(project.AssemblyName==name) { return assembly;
var pc = ParserService.GetProjectContent(project); }
if (pc != null) return base.LoadAssembly(name);
return this.typeResolutionService.LoadAssembly(pc); }
}
Assembly FindAssemblyInProjectReferences(string name)
{
IProjectContent pc = GetProjectContent(file);
if (pc != null) {
return FindAssemblyInProjectReferences(pc, name);
}
return null;
} }
Assembly FindAssemblyInProjectReferences(IProjectContent pc, string name)
{
foreach (IProjectContent referencedProjectContent in pc.ReferencedContents) {
if (name == referencedProjectContent.AssemblyName) {
return this.typeResolutionService.LoadAssembly(referencedProjectContent);
} }
return base.LoadAssembly(name);
} }
return null;
} }
public override XamlTypeFinder Clone() public override XamlTypeFinder Clone()

Loading…
Cancel
Save