Openfiledialog Fehler bei Contextmenü einer Datei

  • WPF

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

    Openfiledialog Fehler bei Contextmenü einer Datei

    Ich habe heute das Erste mal einen sehr komischen Fehler beim OpenfileDialog von WPF entdeckt.
    Eine verwaltete Ausführung wird innerhalb der Sperre für den OS-Loader versucht. Versuchen Sie nicht, verwalteten Code innerhalb einer DllMain- oder Bildinitialisierungsfunktion auszuführen, da dies ein Hängen der Anwendung zur Folge haben kann.
    Dies tritt auf wenn ich einen rechtsklick auf eine Datei mache (Code ist ursprünglich C# aber für Forum konvertiert)

    VB.NET-Quellcode

    1. Dim ofn As New Microsoft.Win32.OpenFileDialog()ofn.Filter = CSCore.Codecs.CodecFactory.SupportedFilesFilterDE
    2. ofn.Title = "Audiodatei auswählen..."
    3. If ofn.ShowDialog() = True ThenEnd If



    Der Fehler tritt beim ofn.ShowDialog() auf.
    Also nochmal: Ein simpler Rechtsklick auf eine Datei wo dann halt Contextmenü mit Löschen, Umbennen usw. kommen sollte.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.

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

    Standardmässig gibt's den auch nicht. Der komt aus Microsoft.Win32.
    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.

    thefiloe schrieb:

    VB.NET-Quellcode

    1. If ofn.ShowDialog() = True Then
    Ich nehme mal an, in WPF sind die Dialog-Returnwerte nicht ansders als bei WinForm.
    Da müsste also so was rauskommen wie DialogResult.OK, jedenfalls nix boolsches.
    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!
    Nope, gibt ein Nullable(Of Bool) zurück.

    @ErfinderDesRades: Den WPF-OpenFileDialog gibts in Microsoft.Win32 definitiv schon seit VB2008.

    lg SeriTools
    | Keine Fragen per PN oder Skype.

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

    Ein sehr merkwürdiger Fehler, den ich so auch nicht reproduzieren kann. Funktioniert der OpenFileDialog aus dem System.Windows.Forms-Namespace auch nicht? Um den zu verwenden, müsstest du halt die System.Windows.Forms.dll zu den Verweisen hinzufügen. Evtl. kannst du ja auch mal ein Testprojekt posten, indem der Fehler auftritt.

    @ErfinderDesRades: Hab den FolderBrowserDialog in WPF auch schon vergebens gesucht, aber dann (zumindest unter XP) den Windows.Forms Dialog verwendet. Hat Microsoft wohl vergessen. Aber es ist sowieso unnötig für WPF extra neue Wrapperklassen zu erstellen.
    Nö will kein Windows Forms einbinden.
    Außerdem wieso habe ich VB-Tag falsch benutzt? Der Code ist im VB-Tag hatte leider nicht gesehen, dass es wiedermal die Zeilenumbrüche weggehauen hat. Das fällt mir bei Chrome allgemein auf, dass es mit dem Texteditor hier manchmal buggy ist... werds korrigieren.

    Und was den Fehler angeht... ich hatte den auch noch nie und hatte schon öfters den Dialog in verwendung.
    Also hat niemand ne Ahnung was das sein kann?

    EDIT: Hab jetzt nochmal versucht den Zeilenumbruch zu korrigieren. Ohne erfolg... wird immernoch falsch dargestellt -> nicht meine Schuld.
    EDIT2: Mir hat das Ganze jetzt keine Ruhe gelassen und hab nochmal den OpenFileDialog ausprobiert. Musste feststellen, dass ohne Änderung jetzt der Rechtsklick wie gewohnt funktioniert. (vll. ein Bug im Framework oder sogar auf Windows ebene?)Wie auch immer finds etwas ärgerlich, da der Fehler in dem Fall ja mehr so Zufallsmäßig auftreten kann. Wie auch immer so lange es jetzt geht lass ich es einfach. Falls trotzdem jemand ne hilfreiche Info hat wäre das auf jeden Fall interessant. Ansonsten schreib ich MS mal nen Ticket.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.

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