Ich habe eine einfache Leinwand mit einer Form im Inneren:Wie kann ein Touch-Ereignis manuell an Canvas oder UIElement in UWP gesendet werden?
<Canvas x:Name="cnvGameOuter" Grid.Row="0" >
<Polygon StrokeThickness="1" x:Name="dashRec" Height="210" Width="220"
ManipulationMode="All" Points="80,0,80,130,0,130,0,200,180,200,180,0" Stroke="#c9c7c7">
</Polygon>
</Canvas>
I Touch-Event zu diesem Leinwand senden möchten oder Form, wie wir sie tatsächlich sind zu berühren. Mit anderen Worten, es ist eine Touch-Emulation.
recognizer.GestureSettings = GenerateDefaultSettings();
// Set up pointer event handlers. These receive input events that are used by the gesture recognizer.
element.PointerPressed += OnPointerPressed;
element.PointerMoved += OnPointerMoved;
element.PointerReleased += OnPointerReleased;
element.PointerCanceled += OnPointerCanceled;
Neben, kann ich PointerRoutedEventArgs
Wert wie Position ändern, Gerätetyp, ...? Sie sind schreibgeschützte Eigenschaften. Ich möchte
void OnPointerPressed(object sender, PointerRoutedEventArgs args)
{
recognizer.ProcessDownEvent(args.GetCurrentPoint(reference));
}
Die 'PointerRoutedEventArgs' ist derjenige verwendet werden, die ich im Mittelpunkt stehen. Ich will es mir selbst definieren und übergeben zu' recognizer'. Warum mache ich das? Da der GestureRecognizer von 'Microsofts.UI.Input' nicht unterstützt Multi-Stift, sondern unterstützt Multi-Touch stattdessen. Können Sie eine Gestenerkennung in C# vorschlagen? – quangkid