Hallo zusammen,
wir haben unsere WinForms Anwendung geändert:
Vorher wurde das grundlegende Form (ein DevExpress RibbonForm) per Module gestartet
<STAThread>
Public Sub Main()
Jetzt, haben wir den Projekthaken "Anwendungsframework aktivieren" gesetzt, wodurch die Main() nicht mehr durchlaufen wird.
Der Code der Main() Methode musste also in den Konstruktor der grundlegende Form gebracht werden.
Innerhalb des Codes kann es passieren, dass modale Dialoge auftreten.
Diese blockieren nun das RibbonForm und wenn der Dialog geschlossen wird, läd das Ribbon auch weiter.
Vorher war das nicht der Fall. Wie kommt es zu diesem unterschiedlichen Verhalten?
(Sicher könnte ich jetzt die Dialoge in Threads starten, ich möchte jedoch das Problem verstehen bzw warum das Verhalten nun anders ist.)
Und warum habt ihr das Anwendungsframework aktiviert?
Und warum habt ihr dann nicht die entsprechenden Events überschrieben?
Und warum habt ihr das Anwendungsframework aktiviert?
Und warum habt ihr dann nicht die entsprechenden Events überschrieben?
Zu1: Weil so eine WinForms Anwendung nunmal standardmässig startet und wichtiger: Weil siche die DPIAwareness so gut durch Manifest und App.Config einrichten ließ. Per Modulstart habe ich es nicht hinbekommen, dass mit der Taskmanager anzeigt, dass die Anwendung z.B. "System" DPI-Aware ist, trotz korrektem Manifest und App.Config.
Zu2: Welche Events? PerMonitorV2 Events sind nicht gemeint oder?
Das Anwendungsframework einschalten ist nichts anderes als das die Program Class von WindowsFormsApplicationBase abgeleitet wird.
https://docs.microsoft.com/de-de/dotnet/api/microsoft.visualbasic.applicationservices.windowsformsapplicationbase?view=netframework-4.8
Wenn du dann "Anwendungsereignisse anzeigen" machst, wird dir eine Class erstellt und darin kannst du einen Haufen von Ereignissen überschreiben.
Das kann man übrigens genauso auch in C# machen und hat dann schon fertige Sachen wie
OnStartup, OnCreateSplashScreen oder z.b. OnStartupNextInstance
Hab nochmal nen test gemacht und auf Module Start umgebaut : läuft nun auch! klasse. wir wissen nun dass wir bei Problemen mit dem winforms start (ich nenn das nur so) immer zurück können.