2017-10-20 41 views
1

我想在手指计数大于1时缩放InkCanvas,但我无法在InkCanvas.Anyone中获取手指计数请帮助我如何获取InkCanvas中的手指数。如何获取InkCanvas中的手指数?

+0

我已经向Microsoft Ink团队询问了这个确切的功能。仍然不可用。 – Laith

回答

0

我没有触摸屏测试,但也许这将工作:

int count; 

    private void InkCanvas_PointerEntered(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e) 
    { 
     count++; 
    } 

    private void InkCanvas_PointerExited(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e) 
    { 
     count--; 
    } 

如果它不能帮助。尝试使用PinterPressedPointerReleased。您可以从事件参数处抓取点Id并处理它们。

+0

这不适用于缩放。 'DirectManipulation'启动并吸收指针事件。 – Laith

+0

是的..它没有奏效。我试过这个InkPath.InkPresenter.ActivateCustomDrying(); InkPath.InkPresenter.SetPredefinedConfiguration(InkPresenterPredefinedConfiguration.SimpleMultiplePointer);现在我可以在StrokeStarted事件中获取手指计数,但是由于使用自定义烘干,我得到的StrokeContainer值为空。 – Santhiya

+0

@Santhiya该文档说:如果启用自定义干燥模式(ActivateCustomDrying),则StrokeContainer为空。你解决了你的问题:“InkCanvas”中的手指数量是多少? –