Browse Source

WinForms Designer: Insert new fields below the last field of class in its designer.cs

pull/540/head
Linquize 11 years ago
parent
commit
6806912502
  1. 6
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/CSharpDesignerGenerator.cs
  2. 7
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/SecondaryDisplayBinding.cs

6
src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/CSharpDesignerGenerator.cs

@ -297,9 +297,9 @@ namespace CSharpBinding.FormsDesigner
void CreateField(CodeMemberField newField) void CreateField(CodeMemberField newField)
{ {
// insert new field below InitializeComponents() // insert new field below the last field or InitializeComponents()
var field = FormsDesignerSecondaryDisplayBinding.GetLastField(formClass, initializeComponents.BodyRegion.FileName);
var bodyRegion = initializeComponents.BodyRegion; var bodyRegion = field != null ? field.BodyRegion : initializeComponents.BodyRegion;
DocumentScript script = GetScript(bodyRegion.FileName); DocumentScript script = GetScript(bodyRegion.FileName);
string newline = DocumentUtilities.GetLineTerminator(script.OriginalDocument, bodyRegion.BeginLine); string newline = DocumentUtilities.GetLineTerminator(script.OriginalDocument, bodyRegion.BeginLine);
string indentation = DocumentUtilities.GetIndentation(script.OriginalDocument, bodyRegion.BeginLine); string indentation = DocumentUtilities.GetIndentation(script.OriginalDocument, bodyRegion.BeginLine);

7
src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/SecondaryDisplayBinding.cs

@ -56,6 +56,13 @@ namespace CSharpBinding.FormsDesigner
return null; return null;
} }
public static IField GetLastField(ITypeDefinition c, string fileNmae)
{
if (c == null)
return null;
return c.Fields.LastOrDefault(field => field.BodyRegion.FileName == fileNmae);
}
public static bool BaseClassIsFormOrControl(ITypeDefinition c) public static bool BaseClassIsFormOrControl(ITypeDefinition c)
{ {
if (c == null) if (c == null)

Loading…
Cancel
Save