我希望能够使用常规MouseBinding
来捕获TextBlock
上的CTRL-Click事件。不幸的是Command
属性不是依赖属性而且我正在使用MVVM,所以我无法将它绑定到我的viewmodel。
微软怎么会遗漏这个基本功能?有没有简单的方法来检测CTRL-Click并将它们绑定到我的viewmodel中的命令?
答案 0 :(得分:5)
最初我认为我指的是使用TextBlock
的{{1}}成员。
在.NET 4中InputBindings
现在继承自InputsBinding
,所以现在Freezable
属性是依赖属性(参见Binding support in InputBindings),解决了绑定问题。
如果您坚持使用.NET 3.5,则可以为所需的任何类型的事件创建一些附加属性。在Command
函数中添加事件处理程序,并根据OnCommandChanged
方法中的修饰符(如Control
键或ClickCount
)进行过滤。
答案 1 :(得分:3)
您可以随时查看使用Attached Command Behaviours。