WPF:纯粹在XAML中在MouseMove上画一条线

时间:2014-02-09 01:11:46

标签: wpf xaml mousemove polyline

我是WPF的新手,我想知道我是否可以在XAML中绘制一条用鼠标位置更新的行?

我知道我能做到:

...
<Canvas x:Name="MyCanvas">
   <Polyline x:Name="MyLine" Points="0,0 1,1" Stroke=1 />
</Canvas>
...

比在C#中

private void MyCanvas_MouseMove(...)
{
   if(!DrawFlag)
       return;

   Point Pos = new Point();
   Pos = e.GetPosition(MyCanvas);
   MyLine.Points[ MyLine.Points.Count - 1 ] = Pos;
}

有没有办法设置标志,DrawFlag,然后只使用XAML代码更新点位置?我觉得答案可能是创建一个模板,但不是很确定。

2 个答案:

答案 0 :(得分:3)

可以使用InkCanvas

在纯粹使用XAML的画布上绘图
<InkCanvas />

答案 1 :(得分:2)

不,你不能仅仅在XAML中这样做。 XAML是一种表示语言,而不是“真正的”编程语言。