C# 如何以最大窗口大小将文件从资源管理器打开到特定监视器上?
这是我到目前为止所拥有的,但它只在主监视器上打开。我的目标是在监视器上打开与我单击的按钮关联的文件C# 如何以最大窗口大小将文件从资源管理器打开到特定监视器上?,c#,winforms,C#,Winforms,这是我到目前为止所拥有的,但它只在主监视器上打开。我的目标是在监视器上打开与我单击的按钮关联的文件 private void Form1_Load(object sender, EventArgs e) { Point btnTopLeft = new Point(15, 15); foreach (var screen in Screen.AllScreens) { Button btn = new But
private void Form1_Load(object sender, EventArgs e)
{
Point btnTopLeft = new Point(15, 15);
foreach (var screen in Screen.AllScreens)
{
Button btn = new Button();
btn.Text = screen.DeviceName;
btn.Size = new Size(100, 23);
btn.Location = btnTopLeft;
btn.Tag = screen;
btn.Click += Btn_Click;
this.Controls.Add(btn);
btnTopLeft.Offset(0, btn.Height + 7);
}
}
private void Btn_Click(object sender, EventArgs e)
{
if (sender == null || !(sender is Button))
return;
var btn = (Button)sender;
if (btn.Tag == null || !(btn.Tag is Screen))
return;
var screen = (Screen)btn.Tag;
System.Diagnostics.Process.Start("explorer.exe", @"c:\");
}
尝试使用
Screen.GetBounds
方法
我相信这会告诉你哪个显示器的按钮大部分是开着的
这将给你一个长方形的显示器主要是哪个
您还可以给它一个点,它将返回该点所在的监视器
一旦确定了它在哪个监视器上,就可以再次使用屏幕
类获取监视器的边界并将应用程序的边界设置为该边界
前
this.Bounds = Screens.AllScreens[1].Bounds;
这是我首先要做的,尽管可能有更好的方法。希望这有帮助。尝试使用
屏幕.GetBounds
方法
我相信这会告诉你哪个显示器的按钮大部分是开着的
这将给你一个长方形的显示器主要是哪个
您还可以给它一个点,它将返回该点所在的监视器
一旦确定了它在哪个监视器上,就可以再次使用屏幕
类获取监视器的边界并将应用程序的边界设置为该边界
前
this.Bounds = Screens.AllScreens[1].Bounds;
这是我首先要做的,尽管可能有更好的方法。希望这有帮助。您想“打开文件”吗?或者你只是指在一个特定的目录中打开资源管理器?可能是你想要“打开一个文件”的副本?或者你只是指在一个特定的目录中打开资源管理器?可能是