Browse Source

fix problems with inherited members in Windows Forms DesignerGenerator - http://community.sharpdevelop.net/forums/t/15800.aspx

4.2
Siegfried Pammer 13 years ago
parent
commit
8a4aff214e
  1. 7
      src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerGenerator/AbstractDesignerGenerator.cs

7
src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerGenerator/AbstractDesignerGenerator.cs

@ -344,8 +344,11 @@ namespace ICSharpCode.FormsDesigner @@ -344,8 +344,11 @@ namespace ICSharpCode.FormsDesigner
continue;
if (expr.TargetType.BaseType != "System.ComponentModel.ISupportInitialize")
continue;
CodeMemberField field = formClass.Members.OfType<CodeMemberField>().First(f => this.formClass.ProjectContent.Language.NameComparer.Equals(fieldRef.FieldName, f.Name));
IClass fieldType = this.formClass.ProjectContent.GetClass(field.Type.BaseType, 0);
IField field = this.formClass.DefaultReturnType.GetFields()
.First(f => this.formClass.ProjectContent.Language.NameComparer.Equals(fieldRef.FieldName, f.Name));
if (field.ReturnType == null)
continue;
IClass fieldType = field.ReturnType.GetUnderlyingClass();
if (fieldType == null)
continue;
if (!fieldType.IsTypeInInheritanceTree(iSupportInitializeInterface))

Loading…
Cancel
Save