Schermate diverse per utenti diversi
Domanda
Sto scrivendo un'applicazione e ho cercato di trovare un modo per avere più schermate per utenti diversi.
Un utente vedrebbe e gestisce la schermata di controllo e l'altro vedrebbe l'output. Fino ad ora ho usato schermate clonate in modo che entrambi gli utenti possano vedere la schermata di controllo.
L'output sarebbe sostanzialmente collegata a un proiettore.
Qualche idea?
Soluzione
Intead di clonare lo schermo, estendere il desktop in modo da poter trascinare le finestre dalla schermata del laptop al proiettore.
Quindi crei due Windows: il controller sul laptop e il display sul proiettore.
Quando vuoi mostrare la finestra del display, puoi fare quanto segue:
private void showDisplay()
{
DisplayWindow dw = new DisplayWindow();
// set dw properties if needed and make window visible
// This is the part you are interested in
int x = Screen.Bounds.X; // x-resolution (width) of the controller screen
int y = 0; // top of the screen
dw.Location = new Point(x, y); // Reposition the display window on the projector
}
Questo codice renderà la finestra di visualizzazione che si desidera vedere nel proiettore visibile solo nel proiettore, mentre il controller sarà sul laptop.