private void AddPointToList(GrafPoint point)
 {
     for (int i = 0; i < GrafPoints.Count; i++)
     {
         if (point.X == GrafPoints[i].X && point.Y == GrafPoints[i].Y)
         {
             return;
         }
     }
     GrafPoints.Add(point); /// Добавление экземрляра GrafPoint в общий список
 }
        // Отрисовка одной точки
        public void Draw(GrafPoint point, int size = 4)
        {
            Ellipse grafEllipseElement = new Ellipse()
            {
                Fill = GrayColorBrush, Width = size, Height = size
            };

            grafEllipseElement.MouseEnter += GrafEllipseElement_MouseEnter;
            grafEllipseElement.MouseLeave += (object sender, MouseEventArgs e) =>
            {
                PositionBox.Visibility = Visibility.Hidden;
            };

            Canvas.SetLeft(grafEllipseElement, point.X - size / 2 + xOffset);
            Canvas.SetBottom(grafEllipseElement, point.Y - size / 2 + yOffset);

            AddPointToList(point);
            DrawArea.Children.Add(grafEllipseElement); /// Добавление экземрляра Ellipse на канвас
        }