C# WPF Anwendung als DLL?
-
Hey
Ist es möglich, eine C# WPF Anwendung als DLL zu kompilieren? Wenn ja, wie geht das?
Ich habe in meiner Naivität einfach als Output Type "Class Library" gewählt, bekomme darauf hin nur folgende Fehler:
Error 1 Library project file cannot specify ApplicationDefinition element. C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.WinFX.targets 269 Error 2 The project file contains a property value that is not valid. C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.WinFX.targets 269
Es handelt sich übrigens bisher um ein leeres Fenster.
-
Mal rein prinzipiell: Was genau soll das bringen?
-
Ich schreibe so eine Art Plugin, welches als DLL aufgerufen wird und unter bestimmten Umständen eine Benutzeroberfläche anzeigen muss. Um die GUI nicht immer laden zu müssen, dachte ich, ich lagere sie in einer eigenen DLL aus.
..ich höre aber heraus, dass es schwierig und unüblich ist. Was habe ich sonst für Möglichkeiten?
-
iop schrieb:
Ich schreibe so eine Art Plugin, welches als DLL aufgerufen wird und unter bestimmten Umständen eine Benutzeroberfläche anzeigen muss. Um die GUI nicht immer laden zu müssen, dachte ich, ich lagere sie in einer eigenen DLL aus.
..ich höre aber heraus, dass es schwierig und unüblich ist. Was habe ich sonst für Möglichkeiten?
Doch es ist durchaus sehr üblich, GUI in eine DLL auszulagern. Konkret klingt deine Fehlermeldung aber danach, dass der Projekttyp noch Überreste einer normalen WPF-Anwendung enthält. Öffne mal die Projektdatei in einem Editor und kommentier Zeile 269 aus.
-
iop schrieb:
..ich höre aber heraus, dass es schwierig und unüblich ist. Was habe ich sonst für Möglichkeiten?
Es ist an sich nicht so schwierig, ich habe beispielsweise auch schon eine WPF-Anwendung im wesentlichen auf die Applicationsklasse reduziert gehabt, und die gesamte UI (inklusive des Hauptfensters) in eine separate DLL verschoben.
-
Ja natürlich geht das. Du willst in dem Fall aber eben einfach nur eine stinknormale Class Library machen und nicht "eine WPF Application als DLL kompilieren"...
-
Danke für die Tips! Ich habs jetzt, das Plugin rennt, die GUI auch.
Ich habe aber anstelle einer normalen Class Library eine WPF User Control Library genommen. Die wird auch zur DLL, ist aber bequemer aufgebaut. Nur zur Info...
Danke euch nochmal!