2016-12-20 1 views
-1

내가 제안 hereUWP RepeatButton이 된 MouseEvent

PreviewMouseLeftButtonUp에 액세스하려고 노력하지만 UWP에서 사용할 수 없습니다. 대한

지금 난 그냥이 :

btnLower.KeyUp += BtnLower_KeyUp; // keyboard 
btnLower.PointerReleased += BtnLower_PointerReleased; // seems only touch input 

의 keyup 예상대로 키보드 입력을 작동하는 것 같다. PointerReleased는 스타일러스/펜 입력 또는 마우스 입력에서는 작동하지 않습니다. 그러면 RepeatButton이 멈추어 클릭 이벤트를 발생시키는 이벤트에 어떻게 응답합니까?

클릭 이벤트를 사용하여 int 값을 증가 또는 감소시키고 변경 (증가/감소)이 완료되면 해당 값을 저장하려고합니다. 펜/터치/마우스 및 키보드 입력에 응답하고 싶습니다. @Sasha

enter image description here

+0

모든 유형에 대해 예를 들어 PreviewMouseDown 이벤트를 사용하는 것이 좋습니다. 펜에 대해서는 잘 모르지만 터치와 마우스로 잘 작동합니다. – Sasha

+0

'Preview ~'이벤트는 WPF 개념입니다. UWP는 이것들을 없앴습니다. –

답변

0

당신은 확인하기 위해 값을 저장하는 코드를 스로틀 수에 대한

편집에만 할 업데이트가 잠시 동안 발생하지 않은 때. 그렇게하면 입력 스택을 해킹하지 않아도됩니다.

시각적 상태가 눌 렸을 때부터 중립적으로 바뀌면 이벤트를 트리거하는 버튼 템플릿에 맞춤형 VisualStateManager을 사용해 볼 수는 있지만 이는 다소 해킹되어 불필요한 것 같습니다.

+0

그래서 구독 할 수있는 기본 이벤트가 없습니까? 커밋 수를 제한하는 또 다른 옵션은 너무 많은 클릭 이벤트를 발생시키지 않고 반복적으로 발생하는 모든 클릭 이벤트를 커밋하도록 반복 버튼의 간격을 높게 설정하는 것입니다. 그게 내 유일한 옵션 인 것 같다. 귀하의 제안에 감사드립니다,하지만 내가 뭘 하려는지 과잉 보인다. –

+0

글쎄, 적어도 누군가가 반복적으로 버튼을 클릭하는 것과 같은 효과를 지니고있는 경우를 처리하는 것은 드문 일이 아닙니다. –