ho questo codice:
Window w = // something
w.Loaded += // some code to take a screenshot of the window
w.Show();
incendi Window.loaded prima che la finestra è a pieno carico
L'evento Loaded prima che la finestra è a pieno carico e ottengo questa immagine:
Potrei aggiungere un Thread.Sleep
o qualcosa dopo w.Show()
e prima dello screenshot ma ho bisogno di eseguire questo pezzo di codice per centinaia di finestre.
La mia domanda è: c'è un altro evento che si attiva quando la finestra è completamente caricata? o un modo per ottenere ciò senza mettere il thread in sleep.
Grazie
@ H.B. Ho bisogno di uno screenshot di ogni finestra del mio progetto –
@ H.B. questo non è davvero il punto della sua domanda e la domanda ha senso anche per 2 finestre. Non vorrei aspettare 4 secondi per 2 screenshot, e di sicuro non mi piacerebbe essere incerto se vado a ottenere se uso un periodo di attesa troppo basso. E a volte potresti aver bisogno (dio non voglia) di 200 screenshot della stessa finestra con dati diversi. Capisco che le preoccupazioni architettoniche non devono essere ignorate, ma problemi come questo non sono rari e la gente non può correggerli ridisegnando e riscrivendo basi di codice di grandi dimensioni. A mio avviso, la domanda è molto ragionevole. –
@Nikola: Non ho mai detto nulla sulla domanda ... –