MenuStrip visueller Fehler

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von Schamash.

    MenuStrip visueller Fehler

    Hallo Zusammen,

    mir ist durchaus bekannt, dass ein MenuStrip jetzt nicht gerade viele Anpassungsmöglichkeiten besitzt, aber lässt sich dieser Fehler nicht unterbinden: (?)



    Sobald ich einen SaveFileDialog über ein MenuStripItem beim MouseDown Event öffne scheint das DropDown Menü eine Option wie "Always on top" zu besitzen...

    VB.NET-Quellcode

    1. Dim _SetPathDialog As New SaveFileDialog

    Ich möchte nicht das Click Event nutzen, da sich sonst das MenuStrip wieder schließt.
    Ich verstehe das Problem nicht.
    Wenn du irgendwo anders (z.B. auf die auszuwählenden Datei) klickst schließt sich dein Menu doch auch.

    edit:
    OK
    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."

    Don_Batisto schrieb:

    das menustrip müsste doch eine .visible-eigenschaft haben
    setz die in deinem mousedown-event auf false dann sollte das menü nicht mehr sichtbar sein

    Das hat keinen Effekt, wenn ich das MenuStrip auf Visible=False stelle. Wobei dies ja auch das komplette MenuStrip unsichtbar machen würde. Ich möchte es aber blos im Hintergrund haben.

    Don_Batisto schrieb:

    hat es die Eigenschaft TopMost? Wenn ja, setz die auf False

    Ich glaube nicht dass das funktionieren wird.

    Irgendwie hört sich das Problem auch ziemlich widersprüchlich an. Du möchtest das MouseDown-Event statt des Click-Events benutzen, weil du möchtest, dass das Menü sichtbar bleibt (was bei beim Click nicht mehr ist), aber jetzt, da es durch Verwendung von MouseDown tatsächlich sichtbar bleibt, willst du es weghaben und unsichtbar machen?

    Das Menü macht genau das was du willst, da reinzupfuschen dürfte nicht unmöglich sein aber schwer werden, vor allem in Bezug auf Gewährleistung der gewohnten Bedienbarkeit durch den Benutzer.

    Im Grunde stört es dich doch, dass das Menü, weil es noch sichtbar ist, nun in der ZOrder vor deinem Datei-Dialog liegt, richtig? Wie wäre es denn dann, den DateiDialog mit einem anderen Parent zu öffnen? Den Desktop zum Beispiel? Oder wenn das nicht geht ein eigenes Fenster erzeugen (das zur Not unsichtbar ist) und dies als Parent des Dialogs zu nutzen?
    Weltherrschaft erlangen: 1%
    Ist dein Problem erledigt? -> Dann markiere das Thema bitte entsprechend.
    Waren Beiträge dieser Diskussion dabei hilfreich? -> Dann klick dort jeweils auf den Hilfreich-Button.
    Danke.

    Don_Batisto schrieb:

    @FireEmerald: Ok, und hat es die Eigenschaft TopMost? Wenn ja, setz die auf False

    Das MenuStrip hat nichts dergleichen - es ist in dieser Hinsicht, anpassungsfähig wie ein Stein.

    @Arby, ich möchte das MenuStrip nicht unsichtbar machen. Ich möchte es nur im Hintergrund haben, wie es normal bei jedem anderen Element auch der Fall ist.
    Das Problem ist das MenuStrip überlager einfach alles, egal ob von meinem Programm oder von einem ganz anderen. Es ist also "Always³ on top".

    Für mich sieht es so aus, als hätte sich Microsoft 0 Gedanken darüber gemacht das dieser Zustand eintreten könnte. Das MenuStrip ist sicher nicht für so etwas gedacht.

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

    Ich verstehe immer noch nicht genau was du damit bezweckst dass, das Menu offen bleibt.
    Aber hast du schon mal über einen Treeview nachgedacht?
    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."