Creare applicazione WPF multi-monitor
valse non è online. Ultima attività: 18/05/2008 19.58.14valse
Inserito il: 12 maggio 2008 09.30
7 messaggi dal 05 ott 2004
Ciao...

...stavo provando a gestire con wpf la visualizzazione dell'applicazione in due monitor contemporaneamente in fullscreen; questo in Windows Form riuscivo (AllScreen, WorkingArea,...) ma in WPF non ho trovato delle funzioni che permettono di farlo...

...chi mi sa dare qualche help?!

Thanks
valse


[Soluzione]

Ho cercato varie discussioni per poter implementare questa cosa: principalmente ci sono due modi.

- referenziando le Windows.Forms API
- utilizzando il VirtualScreen di WPF

Io ho optato per la seconda sia perché non mi piaceva fare "un passo indietro" sia perché il risultato non era ottimale.

In questo modo sono riuscito ad estendere l'applicazione su ogni monitor a disposizione.

Immaginando di avere un xaml "Window1" faccio un override del StartUp dell'applicazione nell App.xaml ed imposto il seguente codice:


protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);

Window1 w1 = new Window1();

w1.Top = SystemParameters.VirtualScreenTop;
w1.Left = SystemParameters.VirtualScreenLeft;
w1.Height = SystemParameters.VirtualScreenHeight;
w1.Width = SystemParameters.VirtualScreenWidth;

w1.Show();
}


Inoltre nella proprietà dello xaml Window1 ho impostato ResizeMode="NoResize" e WindowStyle="None"... questo perché se provo ad impostare WindowState uguale a Maximized non mi estende al secondo monitor (o altri se ne ho di più) e non ho trovato un modo per usarlo.

Questa è la soluzione che ho trovato... se avete altri consigli ben venga ;-)

Modificato da valse il 12 maggio 2008 11.41 -

"L'uomo è il computer più straordinario di tutti."

Vai a:

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.


COMMUNITY
ULTIMI MESSAGGI


IN EVIDENZA
MISC
Powered by .db Forums