问题描述
您好,
我有两台显示器,我想在辅助显示器上打开一个新窗口。申请包括两部分:
I have two monitors that I want to open a new window on secondary monitor. Application include two parts:
- 创建新页面
- 移至辅助监视器
但我找不到次要部分的解决方案。
请帮我将窗口移动到另一台显示器。
please help me for moving window to another monitor.
谢谢,
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
//调用creat新页面函数
NewWindow();
}
private async void NewWindow()
{
var myview = CoreApplication.CreateNewView();
int newid = 0;
await myview.Dispatcher.RunAsync(CoreDispatcherPriority.Normal,()=>
{
Frame newframe = new Frame();
newframe.Navigate(typeof(Newpage), null);
Window.Current.Content = newframe;
Window.Current.Activate();
ApplicationView.GetForCurrentView()。Title =" Z";
newid = ApplicationView.GetForCurrentView()。Id;
});
等待ApplicationViewSwitcher.TryShowAsStandaloneAsync(newid,ViewSizePreference.UseMinimum);
}
}
//called creat new page function NewWindow(); } private async void NewWindow() { var myview = CoreApplication.CreateNewView(); int newid = 0; await myview.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { Frame newframe = new Frame(); newframe.Navigate(typeof(Newpage), null); Window.Current.Content = newframe; Window.Current.Activate(); ApplicationView.GetForCurrentView().Title = "Z"; newid = ApplicationView.GetForCurrentView().Id; }); await ApplicationViewSwitcher.TryShowAsStandaloneAsync(newid, ViewSizePreference.UseMinimum); } }
推荐答案
将Form的StartPosition设置为Manual,然后使用以下代码。当我的计算机上有三台显示器时,代码将窗体/窗口放在第二台显示器上。
Set the Form's StartPosition to Manual then use the following code. When running on my computer which has three monitors the code positions the form/window in the second monitor.
Location = Screen.AllScreens[1].WorkingArea.Location;
如果不确定有多少台显示器使用
If unsure how many monitors there are use
Screen.AllScreens.Length
这篇关于在辅助监视器上打开新窗口的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!