Untermenüs einem Hauptmenü zuweisen - Was ist der beste Weg?

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von Farin.

    Untermenüs einem Hauptmenü zuweisen - Was ist der beste Weg?

    Hallo,

    ich habe mal eine Frage die mich schon etwas länger beschäftigt. Wie baut man ein gescheites dynamisches Menu auf bei folgender Struktur:

    Es gibt eine Application-Form. Hier ist das "Haupt"-Menü zu finden. Die Form selber hat keine Funktionalität. Über die Applications-Form (ParentMidi-Form) werden dann die Unter-Formen angezeigt.

    Es gibt 2 Möglichkeiten:

    Es gibt eine Unter-Form wo es ein Menü gibt, das die ensprechenden Funktionen beinhaltet. (hier ist weniger das Problem)

    Aber es gibt auch noch den Fall das auf der Unter-Form ein TabControl vorhanden ist (ist der Fall der meistens eintritt). Und jede TabPage wiederum benötigt logischerweise sein "eigenes" Menü. Denn jede TabPage hat ja wieder ihre eigene Funktionalität.

    So die Frage ist nun, wie baue ich mir am besten gerade solche Menüs zusammen und was ist der beste Weg?.

    Übergebe ich die Haupt-Menüs mit nach unten in die entsprechenden Klassen ? oder gehe ich über Parent immer eine Ebene höher bis ich an der Haupt-Menüebene angekommen bin ? Oder mache ich mir Eigenschaften in den Klassen, sodass ich auf oberster Ebene die Teil-Menüs mit dem Haupt-Menü zusammenfüge?

    Es gibt so viele Wege und ich bin da etwas unschlüssig, welchen Weg man am besten gehen sollte...

    Gruß Farin

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Farin“ ()

    Vielleicht nutzt Du mehrere ContextMenuStrips,
    die kannst Du offline anlegen und dem entsprechenden Control in der Entwicklungsumgebung zuweisen.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Im moment mache ich das auch so ähnlich und Merge dann die Menüs immer zusammen. Denn die Funktionalität der Menüs muss logischer Weise auf der untersten Ebene passieren.

    Ich habe mir ein eigenes TabControl geschrieben und eine eigene TabPage. Die TabPage hat die Eigenschaft Menu und dieser Eigenschaft wird dann das entsprechende Menü zugewiesen. Das TabCotrol geht dann hin und ließt die Eigenschaft aus, Merged dann das Menü mit dem HauptMenü und es ist da. Ich stelle mir nun wirklich die Frage ob es da eine bessere Möglichkeit gibt... Oder ob das eine gute Idee ist, das auf diesem Weg zu erledigen.

    Gruß Farin
    hmm, ich frage mich momentan wo Dein Bedarf für "dynamische Menus" herkommt. Erzeugst Du irgendwo dynamisch Formen und/oder Tabpages deren Menus dynamisch erzeugt werden müssen ? Enthalten Deine Menus irgendwo dynamische Werte ?

    Ansonsten können sie ja wie von Rod richtig geantwortet irgendwo statisch generiert und dann zugewiesen werden.
    Jo hmm das stimmt auch wieder ;) Also gut dann habe ich mich mit dem Wort dynamisch vll. etwas zu weit aus dem Fenster gelehnt. Ich erstelle die Menus statisch. Die Frage ist nur wie weise ich diese am besten Statisch zu. bzw. an welcher stelle weise ich sie am besten zu also auf welcher Ebene?

    //Edit

    habe den Threadtitel mal angepasst.