c# - 在 Windows 8 商店应用程序上以编程方式将椭圆放置在 Canvas 上

标签 c# xaml canvas shapes ellipse

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

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;
}

最佳答案

试试这个:

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

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

编辑:啊,您可能应该先将椭圆添加到 Canvas 上,然后再移动椭圆。

关于c# - 在 Windows 8 商店应用程序上以编程方式将椭圆放置在 Canvas 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18745045/

相关文章:

c# - 在代码中指定 RowDefinition.Height

wpf - 来自 XAML 中只读属性的 OneWayToSource 绑定(bind)

c# - 等效于 Windows 窗体中的 Canvas

c# - WPF 正确处理 View 和 View 模型

c# - 当单击 visual studio 2015 Resharper 上的运行按钮时,我的代码发生了变化

wpf - 具有相同 CollectionViewSource ItemSource 的两个组合框相互更新

javascript - 是否可以在这里为背景图像设置过滤器?

linux - 绘制一个永远不会消失的矩形

c# - 将位图保存到文件 - Xamarin、Monodroid

c# - 对唯一整数数组进行分组