как ссылаться на drageventArgs в xaml в качестве параметра команды с помощью silverlight - PullRequest
2 голосов
/ 12 мая 2010

в моем приложении silverlight 4 Я пытаюсь связать событие перетаскивания в списке со своей моделью представления. Я использую триггер события выражения blend 4 и invokecommandaction, чтобы подключить событие drop. Устанавливая точки останова на моей модели представления, я вижу, что соответствующая функция запускается, когда я перетаскиваю файл в поле списка, однако я не могу получить доступ к drageventArgs. Я попытался отправить весь список в качестве параметра команды, но это не сработало.

Есть идеи?

Спасибо

1 Ответ

1 голос
/ 13 мая 2010

Я сейчас рассматриваю именно эту проблему. После небольшого исследования я нашел это http://www.silverlightshow.net/news/Silverlight-Commands-Hacks-Passing-EventArgs-as-CommandParameter-to-DelegateCommand-triggered-by-EventTrigger-.aspx

Итак, я решил использовать класс EventToCommand MVVM Light, который похож на InvokeCommandAction, но позволяет передавать аргументы событий в качестве параметра команды. (http://www.galasoft.ch/mvvm/getstarted/)

- вроде нормально работает

<i:Interaction.Triggers>
        <i:EventTrigger EventName="Drop">
            <infra:EventToCommand  PassEventArgsToCommand="True"
                                           Command="{Binding Path=LinkOrderCommand}" />
        </i:EventTrigger>
    </i:Interaction.Triggers>
...