C#/WPF

WPF에서 듀얼 모니터 전체화면

기공이 2016. 4. 10. 15:33

※ 블로그를 이전하며 이 글을 개선하여 포스팅했습니다. (링크)

 

WPF로 제작한 프로그램이 듀얼모니터를 사용하는 환경에서 메인 화면이 아닌 서브 화면에서 전체화면으로 실행되게 하는 코드 입니다.

 

※ 참조를 추가하여야 합니다.

어셈블리 -> System.Drawing

어셈블리 -> System.Windows.Forms

 

1
2
3
4
5
6
7
8
9
10
11
12
SubWindow sub= new SubWindow();
System.Drawing.Rectangle r1 = System.Windows.Forms.Screen.AllScreens[1].WorkingArea;
sub.WindowState = System.Windows.WindowState.Normal;
sub.WindowStyle = WindowStyle.None;
sub.WindowStartupLocation = System.Windows.WindowStartupLocation.Manual;
sub.Left = r1.Left;
sub.Top = r1.Top;
sub.Width = r1.Width;
sub.Height = r1.Height;
sub.Topmost = true;
sub.Show();
sub.WindowState = System.Windows.WindowState.Maximized;
cs

 

Maximized 를 마지막에 해주지 않으면 메인 윈도우에서 전체화면이 되어버립니다.

그리고 SubWindow.xaml의 window 속성은 건드리지 않아도 됩니다.