Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何找到窗体当前所在屏幕的分辨率_C#_Vb.net_Winforms_Screen Resolution_Multiple Monitors - Fatal编程技术网

C# 如何找到窗体当前所在屏幕的分辨率

C# 如何找到窗体当前所在屏幕的分辨率,c#,vb.net,winforms,screen-resolution,multiple-monitors,C#,Vb.net,Winforms,Screen Resolution,Multiple Monitors,我知道我可以很容易地找到主屏幕的屏幕分辨率,但我想找到我的窗体当前所在的屏幕的分辨率(这与我的设置不同,我有三个具有两种不同分辨率的屏幕) 我很感激表单可以跨越多个屏幕,因此我很乐意找到包含表单大部分区域/左上角的屏幕 有没有一个简单的方法可以做到这一点 我可以列举屏幕,但要想确定我的表单在其中的位置很难: For Each scr As Screen In Screen.AllScreens If Me.Left > scr.WorkingArea.Left An

我知道我可以很容易地找到主屏幕的屏幕分辨率,但我想找到我的窗体当前所在的屏幕的分辨率(这与我的设置不同,我有三个具有两种不同分辨率的屏幕)

我很感激表单可以跨越多个屏幕,因此我很乐意找到包含表单大部分区域/左上角的屏幕

有没有一个简单的方法可以做到这一点

我可以列举屏幕,但要想确定我的表单在其中的位置很难:

    For Each scr As Screen In Screen.AllScreens
        If Me.Left > scr.WorkingArea.Left AndAlso Me.Left < (scr.WorkingArea.Left + scr.WorkingArea.Width) Then 'etc

        End If
    Next
屏幕中每个scr As屏幕的
。所有屏幕
如果Me.Left>scr.WORKINGARA.Left和ALSO Me.Left<(scr.WORKINGARA.Left+scr.WORKINGARA.Width),则'
如果结束
下一个
我可以列举屏幕,但我可以计算出我的表单在哪里 坐在这里面很棘手

.Net为此提供了内置方法

看看

返回值

键入:System.Windows.Forms.Screen用于显示以下内容的屏幕 包含指定控件的最大区域。多次 在没有显示包含控件的显示环境中 返回最接近指定控件的显示