2016-08-29 12 views
5

Şu anda .NET sınıfım için bir hesap makinesi uygulaması yapıyorum. Düğmeleri kullandığımda hesap makinesi gayet iyi çalışıyor. Ama klavyede tuşlar kullandığımda, o kadar iyi çalışmıyor. Örneğin, Enter tuşuna bastığımda, hesap makinesinin problemi metin kutusunda hesaplamasını istiyorum. Bunun yerine, giriş son tıklattığım düğmeyi sorunlara yol açar. Bunun olmasını nasıl engelleyebilirim?Anahtar Numara Girin

Bunun garip bir açıklama olduğunu biliyorum, ancak daha iyi nasıl açıklayacağımı bilmiyorum. Pencerenizin/kullanıcı kontrolünüzün kök seviyesinde, geri dönüş tuş kilidi için bir InputBinding ekleyin.

+0

Sen senin hep düğmeye eşittir odağı olduğundan emin olabilir. – ProgrammingDude

+4

['KeyBinding'] 'i kullanmayı düşünün (https://msdn.microsoft.com/en-us/library/system.windows.input.keybinding (v = vs.110) .aspx) – Xiaoy312

+0

Yukarıdaki gibi tuş vuruşu veya KeyUp ve basılan tuşa göre hareket eder. –

cevap

1

Bu, tuşa basmayı engeller ve düğmeyi tıklamış gibi komutunuzu yürütür (Command özelliğinin de bu komuta bağlı olduğu varsayılır). Bir UserControl ile

Örnek:

<UserControl.InputBindings> 
    <KeyBinding Key="Return" Command="{Binding EvaluateCommand}"/> 
</UserControl.InputBindings>