MVVMLight:如何断开事件处理程序

时间:2012-10-29 14:40:33

标签: silverlight-4.0 mvvm-light eventtocommand

我使用MVVMLight EventToCommand将命令挂钩到MouseEnter事件:

<i:Interaction.Triggers>
    <i:EventTrigger EventName="MouseEnter">
        <GalaSoft_MvvmLight_Command:EventToCommand Command="{Binding DragHandleMouseEnterCommand}"  />
    </i:EventTrigger>
</i:Interaction.Triggers>  

如何以编程方式取消挂钩处理程序?
viewObject.MouseEnter - = viewObject.GetViewModel()。DragHandleMouseEtnerCommand给出了类型不匹配错误。

更新:看起来我需要以某种方式使用viewObject.Triggers集合。建议...?
更新II:没有,触发器集合中没有任何内容......

感谢您的任何见解...

1 个答案:

答案 0 :(得分:1)

为什么不在viewmodel中将DragHandleMouseEnterCommand设置为null?

触发器会保留,但不会触发任何东西。如果你想重新激活命令,你只需要“新建”一个新命令并将其绑定到属性并调用RaisePropertyChanged(“DragHandleMouseEnterCommand”)。