ContextMenuStrip Name des geklickten Items auslesen

  • VB.NET

Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Das funktioniert genau so.
    Nur liest du nicht .name sonder .text oder .value oder was auch immer du auslesen möchtest.
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    @Raffi95 Im Klick-Event hast Du das sender-Objekt.
    Setz da mal einen Haltepunkt rein und untersuch dieses Objekt (learning by doing).
    Gugst Du hier.
    ====
    fälschlicherweise
    ist das nicht.
    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!
    @Raffi95 Bei dem Code stellen sich mir mal wieder die Nachenhaare hoch. Wie sieht denn dein aufrufende Sub aus? Ich denke das kann man wesentlich vereinfachen.
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."

    Schamash schrieb:

    <a href="https://www.vb-paradise.de/index.php/User/24124-Raffi95/">@Raffi95</a> Bei dem Code stellen sich mir mal wieder die Nachenhaare hoch. Wie sieht denn dein aufrufende Sub aus? Ich denke das kann man wesentlich vereinfachen.


    VB.NET-Quellcode

    1. Private Sub ContextMenuMessung_ItemClicked(sender As System.Object, e As System.Windows.Forms.ToolStripItemClickedEventArgs) Handles ContextMenuMessung.ItemClicked
    2. MsgBox(e.ClickedItem.ToString())
    3. End Sub


    Da kommt natürlich noch mehr Code dazu.
    Erstellst du das Menu im Code oder vorab im Designer?
    Wenn du es im Designer erstellst kannst du anstelle des ItemClicked schöner das Click-Event des Menüpunkts verwenden.
    Ich vermute mal du verwendest e.ClickedItem je nach Item etwas anderes auszuführen.

    vermutlich etwa so:

    VB.NET-Quellcode

    1. Private Sub ContextMenuStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles ContextMenuStrip1.ItemClicked
    2. Select Case e.ClickedItem.ToString
    3. Case TestToolStripMenuItem.ToString
    4. 'tu was
    5. Case TestToolStripMenuItem1.ToString
    6. 'tu was anderes / oder das gleiche
    7. End Select
    8. End Sub


    Schöner ist das so:

    VB.NET-Quellcode

    1. Private Sub TestToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles TestToolStripMenuItem.Click
    2. 'tu was
    3. End Sub
    4. Private Sub TestToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles TestToolStripMenuItem1.Click
    5. 'tu was anderes / oder das gleich
    6. End Sub
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."

    Raffi95 schrieb:

    VB.NET-Quellcode

    1. MsgBox(e.ClickedItem.ToString())
    Was wird denn da angezeigt?
    Ist das genau das, was Du angezeigt bekommen willst?
    Teste das bei mehreren Items.
    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!

    Schamash schrieb:

    Erstellst du das Menu im Code oder vorab im Designer?
    Wenn du es im Designer erstellst kannst du anstelle des ItemClicked schöner das Click-Event des Menüpunkts verwenden.
    Ich vermute mal du verwendest e.ClickedItem je nach Item etwas anderes…


    Naja ich finde das andere schöner. In dem Menü sind 16 Items enthalten.

    RodFromGermany schrieb:

    Zitat von Raffi95: „VB.NET-Quellcode (1 Zeile)“Was wird denn da angezeigt?
    Ist das genau das, was Du angezeigt bekommen willst?
    <span style="font-size: 14pt"><b>Teste das</b></span> bei mehreren Items.


    Ja, das ist genau das was ich haben will. Bei allen Items :)
    @Raffi95 Dann verstehe ich jetzt nicht, wo das Problem ist.
    Oder ist sdas inzwischen gelöst?
    Und:
    Unterlass bitte das vollständige Zitieren ganzer Posts über Dir. Das mögen wir nicht.
    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!