2016-07-28 5 views
0

Ich habe eine Wörterbuchliste von Formularen, die Dokumente in DockPanelSuite (Windows Forms) sind Wenn eine Schaltfläche auf dem Hauptformular gedrückt wird, alle "Inhalt" des Dokuments enthalten im ersten Steuerelement (ScintillaNet Editor Instanz) des Dokumentformulars sollte gespeichert werden.Aufruf einer Methode in einem DockPanel Dokument

Der Zugriff auf die Save() - Methode des Formulars erweist sich jedoch als frustrierend. Derzeit dies der Code ist:

private void btnCompile_Click(object sender, EventArgs e) 
     { 
      // Save the Project. 
      foreach(var editor in EditorList) 
      { 
       if(editor.Key.StartsWith(CurrentProjectModel.Name)) 
       { 
        FrmCodeEditor fce = new FrmCodeEditor(); 
        fce = (FrmCodeEditor)editor.Value; 
        fce.Save(); 
       } 
      } 

      IDA.Controllers.CLI.Exec exec = new Controllers.CLI.Exec(); 
      exec.ExecuteCompiler(); 
     } 

Editor ist der Name des Formulars ist EditorList das Wörterbuch, das eine Liste aller aktiven Dokumente enthält. Die fce.Save wird jedoch nicht gefunden.

Frage Alles, was ich tun möchte, ist durch alle offenen Dokumente iterieren, die FrmEditor-Typen sind und ihre Save-Methode aufrufen. Wie kann ich das machen?

Antwort

0

Wie sich herausstellte, war die Methode, die ich aufrufen wollte, statisch. Dies wurde jedoch nicht in Intellisense angezeigt.