C# 意外操作已完成,第一个笔划图形缩短

C# 意外操作已完成,第一个笔划图形缩短,c#,silverlight,windows-phone-8,windows-phone,C#,Silverlight,Windows Phone 8,Windows Phone,我试图在画布派生类上实现徒手绘制。我已经为操纵XXX事件实现了处理程序,它们如下所示: private void OnManipulationStarted(object o, ManipulationStartedEventArgs a) { Point pt = GetManPoint(a.ManipulationOrigin, a.ManipulationContainer); Debug.WriteLine("Down at {0},{1}", pt.X, pt.Y);

我试图在画布派生类上实现徒手绘制。我已经为操纵XXX事件实现了处理程序,它们如下所示:

private void OnManipulationStarted(object o, ManipulationStartedEventArgs a)
{
    Point pt = GetManPoint(a.ManipulationOrigin, a.ManipulationContainer);
    Debug.WriteLine("Down at {0},{1}", pt.X, pt.Y);
    m_Strokes.Add(m_Stroke = new Stroke(pt, this));
    CaptureMouse();
    a.Handled = true;
}

private void OnManipulationDelta(object o, ManipulationDeltaEventArgs a)
{
    if (m_Stroke != null)
    {
        Point pt = GetManPoint(a.ManipulationOrigin, a.ManipulationContainer);
        Debug.WriteLine("Delta at {0},{1}", pt.X, pt.Y);
        m_Stroke.AddPoint(pt);
        a.Handled = true;
    }
}

private void OnManipulationCompleted(object o, ManipulationCompletedEventArgs a)
{
    if (m_Stroke != null)
    {
        Debug.WriteLine("Up");
        ReleaseMouseCapture();
        Point[] Pts = m_Stroke.Points;
        m_Stroke = null;
        a.Handled = true;
    }
}
还没有在实际的设备上尝试过,但在模拟器上,有一个持久的问题。对于笔划的第一次尝试,
manipationcompleted
事件在
manipationstarted
之后立即触发。即使我没有松开鼠标按钮。我可以从调试输出中看出,在“Down”之后有“Up”。随后的笔划画得很好(如果有点滞后)

还有谁熟悉这个吗?这是一个模拟器唯一的东西,还是该设备做同样的事情


我在这里提到的笔划类是一个薄包装,它覆盖了
多段线

我在模拟器上经历了相同的行为。但在真正的设备上,它的工作没有问题(您可以在真正的设备上进行测试)