none
Form aus String aufrufen RRS feed

  • Frage

  • Hallo zusammen

    Ich sollte den Namen eines aufzurufenden Forms aus einem String bilden können. Dies funktioniert mit untenstehendem Code gut, solange das aufzurufende Form in derselben DLL liegt, wie der Aufruf. Nun sollte ich dasselbe aber über das ganze Projekt tun können. Hier der Code, welcher nur in der aufrufenden Assembly (DLL) funktioniert:

    Dim targetName As String = String.Empty
                targetName = "Form1"
    
                Dim myAssembly As System.Reflection.Assembly = System.Reflection.Assembly.GetExecutingAssembly()
                Dim strAssemblyName As String = myAssembly.GetName().Name.ToString
    
                Dim FullName As String = myAssembly.GetType(strAssemblyName & "." & targetName, False, True).ToString
    
                Dim myForm As XtraForm = CType(myAssembly.CreateInstance(FullName), XtraForm)
    
                myForm.ShowDialog()

    Für einen Tipp danke ich euch im voraus bestens!

    Viele Grüsse
    Martin

    Dienstag, 27. Mai 2014 09:02

Antworten

  • Hi Martin,
    ein Projekt ist immer in nur einer Assembly, so dass alle Forms auf diesem Wege geholt werden können. Wenn Du Forms aus einem anderen Projekt (andere dll) holen willst, dann musst Du wissen, aus welcher dll Du das Formular laden willst. Den Verweis auf diese dll musst Du nur in Deine Variable myAssembly laden.

    --
    Peter

     
    Dienstag, 27. Mai 2014 09:35

Alle Antworten

  • Hi Martin,
    ein Projekt ist immer in nur einer Assembly, so dass alle Forms auf diesem Wege geholt werden können. Wenn Du Forms aus einem anderen Projekt (andere dll) holen willst, dann musst Du wissen, aus welcher dll Du das Formular laden willst. Den Verweis auf diese dll musst Du nur in Deine Variable myAssembly laden.

    --
    Peter

     
    Dienstag, 27. Mai 2014 09:35
  • Danke Peter! deine Antwort hat mir geholfen, das Problem zu lösen! Viele Grüsse, Martin
    Mittwoch, 28. Mai 2014 19:02