Hallo,
als Einstieg in einen Nebenjob hab ich u.a. die Aufgabe bekommen, eine GUI in C# zu schreiben bei der ich die Events allerdings in C++ programmiere.
Bei der Befragung von Google ist mir nix brauchbares untergekommen. Vllt kann mir einer von euch ein besseres Stichwort nennen oder direkt helfen.
Genauer Wortlaut:
"Das C# Panel soll reine GUI ohne Logik sein. Im C++ Fenster sollen einige Buttons im C# Panel mit EventHandler versehen werden, die Aktionen ...."
Lg
Hallo syn87,
verwende hierfür am besten zusätzlich die C++ Edition von VS bzw. lege ein Projekt mit der Sprache C# und eins mit C++ an.
Die Frage ist nur, was das für einen Sinn machen soll.
Naja es soll gewissermaßen Zeigen mit welchen Hürden ich fertig werde (denke ich). Nebenbei ist die aktuelle Entwicklung ebenfalls auf diesem Level.
Zurueck zum Problem: Dafür 2 verschiedene Projekte machen kommt mir schon sehr sinnvoll vor, da ich nämlich keine Fremden Codedateien in das jeweils andere Projekt packen kann (C# -> C++ und umgedreht). Wie allerdings füge ich Eventhandler und aehnliches zur GUI hinzu? Und ueberhaupt: Wie bette ich das C# Panel in ein C++ Fenster ein?
Schreib mit C++ (ATL) eine COM-Komponente, die kannst du in C# einbinden, oder verwende (zusätzlich) eine managed C++ Bibliothek und mixe diese mit verwalteten und unverwaltete Code
Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...
Geht das auch mit C#? Denn es soll C#(!) in C++ eingebunden werden und nicht umgekehrt.
Hallo,
es sollte keine Probleme machen eine C# Libary in eine Managed C++ Anwendung zu verwenden... Wie es mit unmanaged C++ aussieht weiß ich aber nicht.
Gruß Daniel
Wenn es um Controls geht, die von C# nach C++ geschoben werden sollen, sollte über die API gehen, ist denkich aber sehr umständlich und aufwändig.
Du kannst aber auch mit COM das C-Form Handle nach C# reichen, dort fügst du die C# Controls dem Handle hinzu. (Control.FromHandle). Mittels COM-Events werden die Controls aktualisiert und die Daten zwischen C# und C++ durchgereicht
Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...
was dir helfen könnte:
Howtos / Tutorials zu Interop Managed / Unmanaged Code?
besonders mein letzter post.