1

我已经成功地在画布上放置了一个椭圆,但尽管我尝试了不同的移动方法,它仍显示在它的左上角。在这次尝试中,我试图将它移动到画布的中心,但我希望能够将它移动到画布中的任何位置。

private Ellipse drawEllipse(Canvas aCanvas)
{
   Ellipse newEllipse= new Ellipse();
   newEllipse.Width = 40;
   newEllipse.Height = 40;
   newEllipse.Fill = new SolidColorBrush(Colors.Aquamarine);
   aCanvas.Children.Add(lEllipse);
   newEllipse.SetValue(Canvas.LeftProperty, aCanvas.ActualWidth / 2.0);
   newEllipse.SetValue(Canvas.TopProperty, aCanvas.ActualHeight / 2.0);

   return newEllipse;
}
4

1 回答 1

3

尝试这个:

Canvas.SetLeft(newEllipse, aCanvas.ActualWidth/2.0);
Canvas.SetTop(newEllipse, aCanvas.ActualHeight/2.0);

我没有尝试过,但它一直对我有用。

编辑:啊,你应该先将椭圆添加到画布上,然后再移动椭圆。

于 2013-09-11T15:57:42.020 回答