C++ kann nicht mit WPF interagieren, da WPF eine Technologie ist, die auf verwaltetem Code basiert. Das Hauptziel von WPF besteht aus dem Ereignissystem, den Reflektionsfunktionen und dem Objektrahmen der CLR.
In einer WPF-Anwendung erstellen Sie ein Objektdiagramm mithilfe einer XAML-Datei. Die Laufzeitumgebung verwendet Reflektion, um bestimmte Elemente im XAML an reale Objekte zu binden, die zur Laufzeit instanziiert werden. Dies ist in C++ nicht möglich, da C++ keine Reflektion unterstützt.
WPF benachrichtigt Code-Behind mit Ereignissen (ein Signale/Slots-System). Dies wäre in C++ nicht so einfach möglich, da C++ kein systemeigenes Ereignissystem besitzt. (Es gibt Dinge wie boost::signals
verfügbar)
WPF-Klassen werden alle aus verwaltetem Code erstellt.
Sie können auf WPF von C++/CLI
zugreifen, aber C++/CLI hat tatsächlich mehr gemeinsam mit C# als mit C++. Der Code funktioniert genau wie C#, aber er verwendet die C++ - Syntax (was für mich keinen Sinn ergibt ... mehr Leute beschweren sich über die C++ - Syntax als fast alles andere in der Sprache!).
Wenn Sie WPF verwenden möchten, würde ich empfehlen, nur mit C# beizubehalten.
Ich bin nicht überrascht, es ist MS's beliebteste Sprache. – jlafay