У меня есть UWP App, где я хочу обрабатывать ManipulationDelta
или ManipulationUpdated
и ManipulationCompleted
на PointerWheelChanged
события (для обработки горизонтальной прокрутки от мыши или сенсорного планшета).PointerWheelChanged событие с GestureRecognizer
PointerwheelChanged
В случае, я сумел это с
gesture.ProcessMouseWheelEvent(e.GetCurrentPoint(this), false,false);
где e
является PointerRoutedEventArgs
.
Код сниппета:
GestureRecognizer gesture = new GestureRecognizer();
gesture.ManipulationCompleted += OnManipulationCompleted;
gesture.ManipulationUpdated += OnManipulationUpdated;
void OnManipulationUpdated(object sender, ManipulationUpdatedEventArgs e)
{
//Ideally this Should be called whenever there is a change in manipulation
}
void OnManipulationCompleted(object sender, ManipulationCompletedEventArgs e)
{
//Code for Scroll
//Ideally this has to be called on completion of Manipulation Event(Correct me if am wrong)
}
private void onPointerwheelChanged(object sender, PointerRoutedEventArgs e)
{
gesture.ProcessMouseWheelEvent(e.GetIntermediatePoints((this) sender)[0], false, false);
}
Проблема с этим подходом является, когда onPointerwheelChanged события вызывается, ManipulationCompleted
слишком уволена, несмотря на себя выполнение один длинный слайда в сенсорной панели (Палец был в контакте с сенсорной панелью целом через слайд).
В идеале только одно событие ManipulationCompleted
должно быть запущено в конце одиночного длинного слайда. Но несколько событий ManipulationCompleted
получают Triggered.
Есть ли выход из этого? Изготовление GestureRecognizer
для стрельбы ManipulationCompleted
Событие только в конце слайда?
Привет! Отличный вопрос. Можете ли вы включить свой код, чтобы мы могли более точно увидеть, что происходит? Мы не можем отлаживать его без него.Спасибо –
Вам нужно добавить свой код на свой вопрос. Пожалуйста, обратитесь к http://stackoverflow.com/help/how-to-ask, если вам нужна дополнительная информация о том, как задать вопрос, на который ответят люди. –
Обновлено сообщение! – Highbrow