2016-07-22 9 views
7

Ich habe eine WPF-Anwendung, die für die Verwendung auf einem Touchscreen entwickelt wurde. jedochSingle Touch Read als Scroll-Aktion

Ich benutze eine Listenansicht mit einem Satz von Bildern, mit dem ausgewählten Bild in voller Größe Bildsteuerung erscheint

Wenn auf dem Touchscreen ich die Bilder auswählen kann einfach durch das Bild zu berühren auf der Listenansicht Artikel Ich habe ein kleines Problem.

Wenn der Benutzer den Bildschirm berührt, bewegt sich der Finger des Benutzers oft leicht, während er noch Kontakt mit dem Bildschirm hat, was zur Listenansicht führt, die die Berührung als Bildlaufanforderung interpretiert.

Dies bedeutet, dass die gewünschte Auswahl nur dann tatsächlich erfolgt, wenn der Benutzer vorsichtig ist oder zufällig keine Bewegung während des Kontakts mit dem Bildschirm hat.

Ich nehme an, dass dies ein Problem mit dem Schwellenwert ist, bei dem eine Scroll-Aktion angefordert wird, aber ich kann keine Lösung für dieses Problem finden.

Kann jemand helfen?

Antwort

2

Sie können die PanningMode für die ListView internal Scrollviewer manuell umschalten. Hier ist, wie die Scroll zu bekommen:

// Get the border of the listview (first child of a listview) 
Decorator border = VisualTreeHelper.GetChild(myListView, 0) as Decorator; 

// Get scrollviewer 
ScrollViewer scrollViewer = border.Child as ScrollViewer; 

Jetzt können Sie die Scroll PanningMode Eigenschaft zugreifen.

Sie würden nur die panningmode auf VerticalFirst gesetzt, nachdem der Finger eine bestimmte Schwelle von Ihrem Geschmack mit dem ManipulationDelta Ereignisse bewegt hat, und Sie setzen ihn auf None wieder, wenn der Finger freigegeben wird (ManipulationCompleted Ereignis ausgelöst hat).

Verwandte Themen