2009-11-03 4 views
4

저는 WPF에서 MVVM 패턴을 사용하고 있습니다.MouseBinding의 WPF 키보드 수정 자

나는 Control + Click 이벤트에 해당하는 CheckBoxInputBinding을 설정하고 싶습니다,하지만 MouseBinding 요소에 Modifiers 속성을 볼 수 없습니다. 이 수행하는 방법에 대한

<CheckBox> 
    <CheckBox.InputBindings> 
      <MouseBinding MouseAction="LeftClick" 
         Command="{Binding CheckboxControlClickCommand}" 
         Modifiers="Control" /> 
    </CheckBox.InputBindings> 
</CheckBox> 

어떤 아이디어 이벤트를 사용하지 않고 : 이것은 내가 (존재하지 않는 가상의 코드, obviously- 수정)를 달성하고 싶은 무엇인가?

감사합니다.

답변

1

필자는 ICommand의 Execute() 컨텍스트에서 Keyboard.Modifiers를 사용하여 결국 제대로 작동하는 것으로 보였습니다.

if (Keyboard.Modifiers != ModifierKeys.Control) return; 
    ... 
0

나는 행동이 트릭을한다고 생각합니다. this link을 살펴볼 수 있습니다.

+0

난 당신이 오프베이스라고 생각하지 않는다; 행동을 사용할 수는 있지만 ICommand의 Execute() 컨텍스트에서 Keyboard.Modifiers를 확인할 수 있다는 것을 알지 못했습니다. – egoodberry

13

너무 키 바인딩 함께 사용! MouseBinding 이제 제스처이만을위한 속성을 제공합니다 같은

1

오래된 질문이지만 보인다 ..

<CheckBox> 
    <CheckBox.InputBindings> 
      <MouseBinding Gesture="CTRL+LeftClick" 
         Command="{Binding CheckboxControlClickCommand}"/> 
    </CheckBox.InputBindings> 
</CheckBox> 
관련 문제