Как создать окно WPF, которое распространяется на все мониторыC#

Место общения программистов C#
Anonymous
Как создать окно WPF, которое распространяется на все мониторы

Сообщение Anonymous »

У меня есть установка, в которой несколько мониторов с разным разрешением подключены вертикально, я хочу создать одно окно WPF, которое будет развернуто на всех экранах.
Я попробовал приведенное ниже решение. и не сработало и создало результат, как показано ниже.

Код: Выделить всё

public MainWindow()
{
InitializeComponent();
this.WindowStyle = WindowStyle.None;
this.Topmost = true;

this.Background = System.Windows.Media.Brushes.Black;
this.Loaded += MainWindow_Loaded;1
Background = System.Windows.Media.Brushes.Black;
WindowStartupLocation = WindowStartupLocation.Manual;
this.Show();
}

private void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
Rectangle totalBounds = System.Windows.Forms.Screen.AllScreens
.Select(screen => screen.Bounds)
.Aggregate(Rectangle.Union);

this.Left = totalBounds.Left;
this.Top = totalBounds.Top;
this.Width = totalBounds.Width;
this.Height = totalBounds.Height;

var hwnd = new WindowInteropHelper(this).EnsureHandle();
WindowsServices.SetWindowPos(hwnd, WindowsServices.HWND_TOPMOST, (int)this.Left, (int)this.Top, (int)this.Width, (int)this.Height, WindowsServices.SWP_NOACTIVATE);
}
Изображение

Моя настройка экрана такая:
Изображение

Я попробовал этот проект кода, и этот парень создает новые окна для каждого экрана, чего я не хочу.

Подробнее здесь: https://stackoverflow.com/questions/782 ... e-monitors

Вернуться в «C#»