Обработка жестов во ViewModel - PullRequest
4 голосов
/ 31 марта 2011

Я искал в интернете примеры поиска жестов пролистывания на Windows Phone 7 в ViewModel с использованием MVVM Light.

Я нашел несколько хороших ресурсов по обработке команд от нажатий кнопок итакие, но я не могу найти ничего о том, как справиться с жестами.Кто-нибудь знает, возможно ли это?Если да, есть ли какие-нибудь хорошие ресурсы или вы можете привести краткий пример того, как это можно сделать?

Если нет, я думаю, мне просто придется разбить код и поместить его в код.Тьфу, меня тошнит от этого.;)

Ответы [ 2 ]

3 голосов
/ 18 марта 2012

Вы можете использовать GestureListenerEx из Wp7Tools .

Добавить Wp7Tools в ваш проект:

PM> install-package wp7tools

В вашем xaml:

<Rectangle Fill="Red" Width="100" Height="100">
    <toolkit:GestureService.GestureListener>
        <wp7:GestureListenerEx 
            OnTapAction="Tap"
            OnDragStartedAction="DragStart"
            OnDragCompletedAction="DragEnd"
            />
    </toolkit:GestureService.GestureListener>
</Rectangle>

И в вашей ViewModel:

public void Tap(GestureEventArgs e) {
    //Do something
}

public void DragStart(DragStartedGestureEventArgs e) {
    Debug.WriteLine(e.Direction);
}

public void DragEnd(DragCompletedGestureEventArgs e) {
    Debug.WriteLine(e.Direction);           
}

Вот и все.Нет кода, нет команд, просто укажите метод, который вы хотите выполнить:)

0 голосов
/ 31 марта 2011

Как насчет создания набора элементов управления, к которому вы хотите применить жесты к пользовательскому элементу управления?

Или даже обернуть пользовательский элемент управления вокруг слушателя жестов, а затем свойства поверхности, используя свойства зависимостей, чтобы вы могли связываться с ними

...