diff --git a/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/Services/TypeResolutionService.cs b/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/Services/TypeResolutionService.cs index a15504addc..c801c33b42 100644 --- a/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/Services/TypeResolutionService.cs +++ b/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/Services/TypeResolutionService.cs @@ -266,6 +266,11 @@ namespace ICSharpCode.FormsDesigner.Services if (IgnoreType(name)) { return null; } + #if DEBUG + if (!name.StartsWith("System.")) { + LoggingService.Debug("TypeResolutionService: Looking for " + name); + } + #endif try { Type type = Type.GetType(name, false, ignoreCase); diff --git a/src/AddIns/DisplayBindings/ResourceEditor/Project/Src/ResourceEdit/ResourceList.cs b/src/AddIns/DisplayBindings/ResourceEditor/Project/Src/ResourceEdit/ResourceList.cs index 05d3df2320..3b2152d020 100644 --- a/src/AddIns/DisplayBindings/ResourceEditor/Project/Src/ResourceEdit/ResourceList.cs +++ b/src/AddIns/DisplayBindings/ResourceEditor/Project/Src/ResourceEdit/ResourceList.cs @@ -120,10 +120,10 @@ namespace ResourceEditor public void LoadFile(string filename) { - Stream s = File.OpenRead(filename); switch (Path.GetExtension(filename).ToLowerInvariant()) { case ".resx": - ResXResourceReader rx = new ResXResourceReader(s); + ResXResourceReader rx = new ResXResourceReader(filename); + rx.BasePath = Path.GetDirectoryName(filename); IDictionaryEnumerator n = rx.GetEnumerator(); while (n.MoveNext()) if (!resources.ContainsKey(n.Key.ToString())) @@ -135,7 +135,7 @@ namespace ResourceEditor //// new file will fail here - so we have to ignore exception(s) ResourceReader rr=null; try { - rr = new ResourceReader(s); + rr = new ResourceReader(filename); foreach (DictionaryEntry entry in rr) { if (!resources.ContainsKey(entry.Key.ToString())) resources.Add(entry.Key.ToString(), new ResourceItem(entry.Key.ToString(), entry.Value)); @@ -149,7 +149,6 @@ namespace ResourceEditor } break; } - s.Close(); InitializeListView(); } diff --git a/src/Libraries/NRefactory/Project/Src/Output/CodeDOM/CodeDOMOutputVisitor.cs b/src/Libraries/NRefactory/Project/Src/Output/CodeDOM/CodeDOMOutputVisitor.cs index c5b52a8798..d377b36a39 100644 --- a/src/Libraries/NRefactory/Project/Src/Output/CodeDOM/CodeDOMOutputVisitor.cs +++ b/src/Libraries/NRefactory/Project/Src/Output/CodeDOM/CodeDOMOutputVisitor.cs @@ -1,7 +1,7 @@ // // // -// +// // $Revision$ // @@ -896,6 +896,9 @@ namespace ICSharpCode.NRefactory.Parser IdentifierExpression identifier = fieldReferenceExpression.TargetObject as IdentifierExpression; if (identifier != null) return !IsField(identifier.Identifier) && !IsLocalVariable(identifier.Identifier); + TypeReferenceExpression tre = fieldReferenceExpression.TargetObject as TypeReferenceExpression; + if (tre != null) + return true; return false; } @@ -959,6 +962,9 @@ namespace ICSharpCode.NRefactory.Parser type = new StringBuilder(oldType); } return new CodeTypeReferenceExpression(type.ToString()); + } else if (fieldReferenceExpression.TargetObject is TypeReferenceExpression) { + type.Insert(0, ((TypeReferenceExpression)fieldReferenceExpression.TargetObject).TypeReference.SystemType); + return new CodeTypeReferenceExpression(type.ToString()); } else { return null; }