Menüitems ausblenden

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Menüitems ausblenden

    Hallo,

    ich versuche beim laden einer Form, alle vorhandenen Menüpunkte auszublenden, und je nach Berechtigung der Benutzer die einzelnen Menüpunkte zu aktivieren.

    Aktuell blende ich jeden einzelnen Menüpunkt aus. Da dies mittlerweile über 20 Menüpunkte sind, und immer noch Menüpunkte hinzu kommen, möchte ich diese Menüpunkte alle
    ausblenden.

    Aktuell blende ich die Menüpunkte so aus:

    VB.NET-Quellcode

    1. StammdatenToolStripMenuItem.Visible = False
    2. VersandToolStripMenuItem.Visible = False
    3. LagerverwaltungToolStripMenuItem.Visible = False
    4. ....usw.


    Nun habe ich mit folgendem Code versucht alle auszublenden, aber es passiert nichts.

    VB.NET-Quellcode

    1. For Each ctrl As ToolStripMenuItem In MenuStrip1.Controls
    2. If TypeOf ctrl Is ToolStripMenuItem Then
    3. ctrl.Enabled = False
    4. End If
    5. Next


    Was mache ich Falsch?

    Viele grüße
    Hallo

    Kurze Erklärung zum Aufbau des MenuStrip-Control.

    1. Ebene -> MenuStrip
    2. Ebene -> MenuStrip.Items = ToolStripMenuItem()
    3. Ebene -> ToolStripMenuItem.DropDownItems = ToolStripMenuItem()
    4. Ebene -> ToolStripMenuItem.DropDownItems = ToolStripMenuItem()
    usw.
    MenuStrip items Enable/Disable vb.net

    Somit sollte der Code in etwa so aussehen

    VB.NET-Quellcode

    1. For Each MenuCtrl As ToolStripMenuItem In MenuStrip1.Items
    2. For Each ctrl As ToolStripMenuItem In MenuCtrl.DropDownItems
    3. ctrl.Visible = False
    4. Next
    5. Next
    @broesel68 Wenn das Hanuptmenü weg ist, sind die Untermenüs auch weg.
    Schau Dir mal die Prozedur InitializeComponents() in der Datei FormX.Designer.vb an, dort kannst Du sehen, wie das Menü codemäßig aufgebaut ist.
    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!