WPF MessageBox-Schaltflächen sind nicht dem Betriebssystem zugeordnet

8

Die Schaltflächen meiner Nachrichtenbox in WPF sind also nicht vom Betriebssystem abhängig.
Ich habe sogar versucht diese Methode und es hat nicht funktioniert.

Ich habe ein Manifest, ich laufe unter Windows 7 Ultimate x86 und .NET Framework 4 Client Profile.

BEARBEITEN: Es funktioniert jetzt.

    
Vercas 20.03.2011, 16:14
quelle

3 Antworten

9

Die Änderungen, die Sie vorgenommen haben, wurden gespeichert, Sie können sie jedoch beim Debuggen in VS nicht anzeigen. Um dies zu beheben, klicken Sie mit der rechten Maustaste auf Ihr Projekt und klicken Sie auf "Eigenschaften" und dann auf "Debuggen". Unten auf der Seite befindet sich ein Kontrollkästchen mit dem Namen "Visual Studio-Hosting-Prozess aktivieren" - deaktivieren Sie dies. Es wird empfohlen, Visual Studio nach dieser Änderung neu zu starten.

Alternativ können Sie auch ohne Debugging (STRG + F5) erstellen.

    
Prisoner 20.03.2011, 16:20
quelle
17

Dies ist ein seltsamer Fehler in WPF, es fehlen die Rohrleitungen, um visuelle Stile zu aktivieren. Doppelt-seltsam, weil das nicht schwer ist.

Die Problemumgehung ist das Ändern des Manifests, das in Ihrem Programm eingebettet wird. Wählen Sie Ihr EXE-Projekt, dann Projekt + Neues Element hinzufügen, Allgemein, wählen Sie Anwendungsmanifestdatei. Sie erhalten das Standardmanifest, das eingebettet wird, beachten Sie die Elemente <assemblyIdentity> und <trustInfo> . Fügen Sie das dazwischen ein:

%Vor%

Das Meldungsfeld wird jetzt den visuellen Stil des Betriebssystems haben, das Aero-Design mit dem leuchtenden Schließen-Knopf standardmäßig auf Vista und höher.

Wenn Sie dies in Visual Studio 2010 tun, ist dieser Manifesteintrag bereits vorhanden, aber auskommentiert. Sie finden es am Ende der Datei. Entfernen Sie einfach die Kommentare, die <!-- vor <dependency> und die --> nach </dependency>

Beachten Sie, dass dieses Manifest nicht aktiviert ist, wenn Sie mit dem Debugger und dem Visual Studio-Hosting-Prozess arbeiten. Das ist eine andere .exe-Datei in Ihrem Build-Verzeichnis, yourapp.vshost.exe. Projekt + Eigenschaften, Registerkarte Debug, scrollen Sie nach unten, deaktivieren Sie "Visual Studio-Hosting-Prozess aktivieren". Das hat ein paar Nebenwirkungen in Bezug auf die Sicherheit, es gibt nicht viel Sinn, dies tatsächlich zu tun, da Ihr Benutzer dieses Problem nie haben wird.

    
Hans Passant 20.03.2011 16:35
quelle
3

Sie könnten versuchen, Ссылка zu verwenden - Code, der innerhalb von Ссылка

Weitere Dokumentation auch auf Ссылка

    
Stuart 20.03.2011 16:21
quelle

Tags und Links