EventToCommand в стиле кнопки
Я хочу назначить одну и ту же команду всем моим кнопкам на моем пользовательском элементе управления. Я использую MVVM Light и перепробовал все комбинации. Я также пытался использовать EventSetter, но это не позволяет привязку к команде в ViewModel
Вот пример того, что я пытаюсь сделать:<Style x:Key="CalculatorButton" TargetType="telerik:RadButton">
<Setter Property="Margin" Value="2"/>
<Setter Property="Cursor" Value="Hand"/>
<Style.Triggers>
<i:EventTrigger EventName="Click">
<cmd:EventToCommand Command="{Binding ButtonClick}"/>
</i:EventTrigger>
</Style.Triggers>
</Style>
Ошибка времени разработки: значение типа "EventTrigger" нельзя добавить в коллекцию или словарь типа "TriggerCollection".
Ошибка во время выполнения: значение \"System.Windows.Interactivity.EventTrigger\" не относится к типу \"System.Windows.TriggerBase\" и не может использоваться в этой универсальной коллекции
1 ответ
К сожалению, i:EventTrigger
это не то же самое, что EventTrigger
, Бывший является частью System.Windows.Interactivity
и последний является основной частью WPF. поскольку EventToCommand
использования System.Windows.Interactivity
вам придется использовать другой механизм, чем Style.Triggers
использовать его в стиле. Вы можете использовать мою технику, описанную в этом ответе Stackru: