public void OnStrokePositionCalculated(object sender, StrokePositionCalculatedEventArgs args)
 {
     if (!CurrentStroke.Course.Equals("Net/Out"))
     {
         Placement newPosition = new Placement();
         newPosition.WX          = args.Position.X;
         newPosition.WY          = args.Position.Y;
         CurrentStroke.Placement = newPosition;
         Console.WriteLine(args.Position.X);
         Console.WriteLine(args.Position.Y);
         NextStroke();
     }
 }
        private void OnStrokePositionCalculated(object source, StrokePositionCalculatedEventArgs args)
        {
            if (!CurrentStroke.Course.Equals("Net/Out"))
            {
                if (CurrentStroke.Number > DrawnStrokes.Count)
                {
                    while (CurrentStroke.Number > DrawnStrokes.Count)
                    {
                        DrawnStrokes.Add(createDrawElement(Visibility.Hidden));
                    }
                }

                DrawElement dE = DrawnStrokes[CurrentStroke.Number - 1];
                dE.text = CurrentStroke.Number.ToString();
                putGridToPosition(args.Position, dE);
                dE.g.Visibility = Visibility.Visible;

                showCorrectStrokes();
            }
        }