J'ai un contrôle InkCanvas qui prend tout mon écran. Il prend la souris ou l'entrée tactile pour dessiner. J'ai la configuration la plus élémentaire de InkCanvas et il ressemble à ceci:WPF InkCanvas La largeur/hauteur du dessin n'est pas cohérente dans différents environnements
<InkCanvas Grid.Row="2" x:Name="inkCanvas">
</InkCanvas>
Je peux tracer des traits à la fois en utilisant la souris et la saisie tactile. Le comportement est cohérent en ce qui concerne la largeur/hauteur du trait (ils sont identiques). Toutefois, lorsque j'essaie de dessiner sur le même InkCanvas à l'aide de mon API d'injection tactile (j'injecte des touches dans OS à l'aide de Win32 Touch Functions), les traits apparaissent beaucoup plus fins.
J'ai essayé de changer le dessin des attributs sur elle en ajoutant les éléments suivants:
<InkCanvas Grid.Row="2" x:Name="inkCanvas">
<InkCanvas.DefaultDrawingAttributes>
<DrawingAttributes Width="10" Height="10"/>
</InkCanvas.DefaultDrawingAttributes>
</InkCanvas>
Après avoir fait ce changement les coups tirés par injection toucher proportionnellement augmenté en largeur et en hauteur. Mais encore une fois, ils étaient beaucoup plus minces comparés à la souris ou à l'entrée tactile directe. Ma question est de savoir si quelqu'un a joué avec InkCanvas en utilisant l'API Windows Touch Injection et sait exactement pourquoi InkCanvas se comporte différemment entre Direct Touch et Injected Touch.
De même, existe-t-il un autre moyen de définir la largeur et la hauteur des traits InkCanvas, à l'exception de ce que je fais?