我正在寻找一种在C#画布上绘制单点(带颜色)的方法。 在android中我会做类似
的事情paint.Color = Color.Rgb (10, 10, 10);
canvas.DrawPoint (x, y, paint);
所以我认为我可以在Shape class中找到它,但它不在那里。我错过了什么或者没有办法画出一点吗?
在第二种情况下,推荐的绘制点的方法是什么?在HTML5画布中存在类似的问题,人们使用rectangles/circles绘制点。
P.S。一个类似标题Add Point to Canvas的问题没有回答它并进入“如何绘制形状”。
答案 0 :(得分:2)
我刚刚为UWP跑了同样的问题,我最终决定使用Ellipse:
int dotSize = 10;
Ellipse currentDot = new Ellipse();
currentDot.Stroke = new SolidColorBrush(Colors.Green);
currentDot.StrokeThickness = 3;
Canvas.SetZIndex(currentDot, 3);
currentDot.Height = dotSize;
currentDot.Width = dotSize;
currentDot.Fill = new SolidColorBrush(Colors.Green);
currentDot.Margin = new Thickness(100, 200, 0, 0); // Sets the position.
myGrid.Children.Add(currentDot);
答案 1 :(得分:0)
折线怎么样?
XAML:
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<Canvas x:Name="canvas" Background="#00FFFFFF" MouseMove="Canvas_MouseMove">
<Polyline x:Name="polyline" Stroke="DarkGreen" StrokeThickness="3"/>
</Canvas>
</Grid>
C#:
private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
{
polyline.Points.Add(new Point(0,0));
polyline.Points.Add(new Point(0, 1));
polyline.Points.Add(new Point(1, 0));
polyline.Points.Add(new Point(1, 1));
}