首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在C#winform中,如何识别应用程序显示在哪个监视器上

在C# WinForm中,要识别应用程序显示在哪个监视器上,可以使用Screen类。Screen类提供了一些方法和属性,可以帮助您获取屏幕信息和监视器信息。

以下是一个示例代码,演示如何在C# WinForm中获取应用程序显示在哪个监视器上:

代码语言:csharp
复制
using System;
using System.Windows.Forms;

namespace GetMonitorInfo
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            // 获取当前屏幕
            Screen currentScreen = Screen.FromControl(this);

            // 获取当前屏幕的名称
            string screenName = currentScreen.DeviceName;

            // 获取当前屏幕的分辨率
            int screenWidth = currentScreen.Bounds.Width;
            int screenHeight = currentScreen.Bounds.Height;

            // 获取当前屏幕的工作区域
            Rectangle workingArea = currentScreen.WorkingArea;

            // 输出屏幕信息
            MessageBox.Show($"当前屏幕名称:{screenName}\n分辨率:{screenWidth}x{screenHeight}\n工作区域:{workingArea}");
        }
    }
}

在上面的示例代码中,我们使用了Screen.FromControl方法来获取当前窗体所在的屏幕。然后,我们使用DeviceName属性获取屏幕的名称,使用Bounds属性获取屏幕的分辨率,使用WorkingArea属性获取屏幕的工作区域。最后,我们将获取到的屏幕信息显示在一个消息框中。

需要注意的是,如果您的应用程序跨越多个监视器,那么需要使用Screen.AllScreens属性来获取所有监视器的信息,并根据窗体的位置来确定窗体显示在哪个监视器上。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券