Как нарисовать прямоугольную границу angular на экране в WPF? - PullRequest
0 голосов
/ 03 мая 2020

Я создаю приложение WPF для выбора экрана. Я пытаюсь нарисовать красный прямоугольник на моем экране. Я не вижу никаких проблем, когда рисую на своем основном мониторе, выбор в границах. Я вижу проблему с моим дополнительным монитором, левая и верхняя стороны не видны.

Вот код, который у меня есть:

      monitor_index is nothing but the index of the screen selection. 
       { System.Windows.Forms.Screen screen = System.Windows.Forms.Screen.AllScreens[Convert.ToInt32(monitor_index)];

                var StartPoint = new System.Drawing.Point(0, 0);


 var EndPoint = new System.Drawing.Point(screen.Bounds.Width, screen.Bounds.Height);
            selectedAreaControl = new Form
            {
                TopMost = true,
                ShowInTaskbar = false,
                BackColor = Color.LightGreen,
                TransparencyKey = Color.LightGreen,
                FormBorderStyle = FormBorderStyle.None,
                Name="redborder"

            };
            selectedAreaControl.Paint += new PaintEventHandler(OnSelectedAreaPaint);
            selectedAreaControl.StartPosition = FormStartPosition.Manual;
            selectedAreaControl.Location = screen.Bounds.Location;
            selectedAreaControl.Bounds = new Rectangle(selectedAreaControl.Location, new Size((EndPoint.X - StartPoint.X), (EndPoint.Y - StartPoint.Y)));
            selectedAreaControl.Left = selectedAreaControl.Location.X + StartPoint.X;
            selectedAreaControl.Top = selectedAreaControl.Location.Y + StartPoint.Y;
            selectedAreaControl.Show();
    }


        private void OnSelectedAreaPaint(object sender, PaintEventArgs e)
                {
                Rectangle rect = selectedAreaControl.ClientRectangle;
                Pen pen = new Pen(new SolidBrush(borderColor), borderWidth);
                e.Graphics.DrawRectangle(pen, rect);
            }

Посмотрите на это: Здесь вы можете видеть левую и верхнюю границу, которую не видно. enter image description here

Вот как это выглядит, когда я на основном экране. enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...