Назначение команды EventSetter - PullRequest
4 голосов
/ 13 октября 2010

Как назначить команду для обработчика в EventSetter, я хочу написать это:

<Style x:Key="ItemStyle" TargetType="{x:Type ListBoxItem}">
            <EventSetter Event="PreviewMouseDoubleClick" Handler="{Binding MyDoubleClickCommand}"/>            

1 Ответ

3 голосов
/ 09 февраля 2011

Попробуйте присоединенные команды Марлона Греча , как упомянуто в этом предыдущем вопросе .

В качестве более простого, но менее гибкого решения, предоставьте Handlerреализация в коде для прямого вызова команды, например:

<!-- In the XAML -->
<EventSetter Event="PreviewMouseDoubleClick" Handler="MyPreviewDoubleClickHandler"/>

// In the code-behind
private void MyPreviewDoubleClickHandler(object sender, RoutedEventArgs args) {
    object my_param = ...;
    MyCommand.Execute(my_param, this);
}
...