Из вашего вопроса не ясно, ищите ли вы способ переместить окно на дополнительный монитор и затем перейти на полноэкранный режим, или вы просто хотите поддерживать полноэкранный режим на любом мониторе, на котором включено окно (что первичный или вторичный).
Если позднее, для окна WPF, хотя оно и не совсем совпадает с полноэкранным режимом, вы можете удалить границы, когда оно развернуто, и восстановить границы, когда оно не развернуто. Не нужно проверять, какой монитор и т. Д. Отображение заголовка / строки заголовка контролируется состоянием границы.
protected override void OnStateChanged(EventArgs e)
{
if (WindowState == WindowState.Maximized)
{
if (WindowStyle.None != WindowStyle)
WindowStyle = WindowStyle.None;
}
else if (WindowStyle != WindowStyle.SingleBorderWindow)
WindowStyle = WindowStyle.SingleBorderWindow;
base.OnStateChanged(e);
}
Благодарность предоставляется Павлу за его ответ на основе форм в текущем вопросе и Ниру за его ответ в на этот вопрос .