Wie kann eine WPF -Anwendung darauf warten, dass Windows vor der Verarbeitung vollständig vom UI -Thread geöffnet wird?

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Wie kann eine WPF -Anwendung darauf warten, dass Windows vor der Verarbeitung vollständig vom UI -Thread geöffnet wird?

by Guest » 12 Feb 2025, 09:18

Ich muss eine Anwendung erstellen, die komplexe Fenster öffnet (Windows, die ungefähr 1 Minute dauern, bis der UI -Thread sie öffnet). Sobald sie geöffnet und geladen sind, generieren Sie dann Bilder dieser Windows in .jpg -Dateien. Nimmt die Snapshots in einem Tick -Event -Handler. Dies ist ein Job für Code, der mit dem UI -Thread abspielt, mit dem ich nicht vertraut bin.
Hier ist mein Code: < /p>
protected override void DoStartCapture()
{
try
{
m_dispatcherTimers = new List();
foreach (var mimicGroup in m_mimicGroupsToCapture)
{
foreach (var mimic in mimicGroup.Mimics)
{
OpenView(mimic.View, 2);
}

var dispatcherTimer =
new DispatcherTimer
{
Interval = TimeSpan.FromSeconds(Convert.ToInt32(mimicGroup.CaptureIntervalInSeconds)),
Tag = mimicGroup
};
dispatcherTimer.Tick += M_mainDispatcherTimer_Tick;
m_dispatcherTimers.Add(dispatcherTimer);
dispatcherTimer.Start();
}

m_openViews = ViewsIntegrationService.GetOpenViews();
}
catch (Exception ex)
{
Trace.TraceError("View Capture Service error. Exception: " + ex.Message);
StopCapture();
throw;
}
}
< /code>
Wenn ich einen Haltepunkt in die Zeile stecke, in der das Dispatchertimer deklariert wird, wird diese Zeile getroffen, bevor ich die Fenster sehe. Die OpenView -Methode wurde von jemand anderem geschrieben.>

Top