如何在WPF中手动将事件提交到InkCanvas?

如何在WPF中手动将事件提交到InkCanvas?,wpf,inkcanvas,Wpf,Inkcanvas,如何手动提交InkCanvas接收的事件 我需要做的是,将InkCanvas的模式设置为ink模式,然后将虚拟事件发送到InkCanvas,这样我就可以像用户使用真实鼠标一样获得绘图行为 感谢以下代码片段显示了在InkCanvas中绘制形状的示例: StylusPointCollection stroke1Points = new StylusPointCollection(); stroke1Points.Add(new StylusPoint(50,10)); stroke1Points.A

如何手动提交InkCanvas接收的事件

我需要做的是,将InkCanvas的模式设置为ink模式,然后将虚拟事件发送到InkCanvas,这样我就可以像用户使用真实鼠标一样获得绘图行为


感谢

以下代码片段显示了在InkCanvas中绘制形状的示例:

StylusPointCollection stroke1Points = new StylusPointCollection();
stroke1Points.Add(new StylusPoint(50,10));
stroke1Points.Add(new StylusPoint(90,50));
stroke1Points.Add(new StylusPoint(10,50));
stroke1Points.Add(new StylusPoint(50,10));

Stroke stroke1 = new Stroke(stroke1Points);

canvas.Strokes.Add(stroke1);            
其中canvas为InkCanvas类型。上图在画布中生成一个三角形

是的,如果答案对你有帮助,你可以接受。

像这样的问题

    private void inkSurface_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
    {
        inkSurface.CaptureMouse();

        _inkStroke = new Stroke(
            e.StylusDevice.GetStylusPoints(inkSurface));
        _inkStroke.DrawingAttributes.Width = 5;
        _inkStroke.DrawingAttributes.Height = 5;
        _inkStroke.DrawingAttributes.Color = Colors.Black;

        inkSurface.Strokes.Add(_inkStroke);
        e.Handled = true;
    }

    private void inkSurface_MouseMove(object sender, MouseEventArgs e)
    {
        if (_inkStroke != null)
        {
            _inkStroke.StylusPoints.Add(
                e.StylusDevice.GetStylusPoints(inkSurface));
        }
        e.Handled = true;
    }

    private void inkSurface_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
    {
        inkSurface.ReleaseMouseCapture();
        e.Handled = true;
    }

这不是我想要的,我想要使用InkCanvas中构建的手绘绘图,它在Ink模式下激活,我想要在没有真实鼠标事件的情况下实现它,这是可能的吗?如果没有鼠标,输入来自哪里???无论形状是什么,你必须知道点。我们有一个双笔板,通过串行端口连接,每支笔流坐标,我需要使用内置的徒手画将这些坐标传递到InkCanvas。这正是你可以用上面的代码做的。可以将坐标作为触针点添加到stroke1集合。如果检测到正在创建新笔划,则可以如上所述添加新StylusPointCollection。感谢Loxy,但InkCanvas中内置的徒手绘制要比使用StylusPointCollection快得多。我已经尝试过StylusPointCollection方法,它工作得很好,但速度不如InkCanvas上的徒手绘制