2014-10-31 33 views
6

anahtarına girildiğinde yazılım klavyesini gizlemek istiyorum ancak hiçbir çözüm benim için uygun şekilde çalışmıyor. (Windows Phone 8.1 Evrensel Uygulama)Windows Phone 8.1 yazılım klavyesi nasıl etkin bir şekilde gizlenir?

Bu sadece çalışmaz:

if (e.Key == VirtualKey.Enter) 
{ 
    textBox.IsEnabled = false; 
    textBox.IsEnabled = true; 
} 

bir yöntem şöyle:

private void LoseFocus(object sender) 
{ 
    var control = sender as Control; 
    var isTabStop = control.IsTabStop; 
    control.IsEnabled = false; 
    control.IsTabStop = false; 
    control.IsEnabled = true; 
    control.IsTabStop = isTabStop; 
} 

eser sadece kısmen. Klavyeyi sadece ilk defa metin kutusu kullandığımda saklıyor. İkinci kez klavye yeniden beliriyor.

+0

aynı yöntemle tekrar 'IsEnabled' kapatıp eğer form kayıt olmayacağını unutmayın girmek klavyeyi gizlemek için tam koddur senin yöntem, _after_ olana kadar değişir. İstediğiniz değer, yöntem içinde değiştirilebilir, ancak yalnızca işlev bittikten sonraki sonuç önemli olan şeydir. – gunr2171

cevap

2

Sadece böyle bir şey yaptım ve işe yarıyor:

private async void makeRequest(string title, int page) 
    { 
     myTextBox.IsEnabled = false; 
     myTextBox.IsTabStop = false; 
     // here is my httprequest and changing itemssource of listview 
     myTextBox.IsEnabled = true; 
     myTextBox.IsTabStop = true; 
    } 
17

gizlemek ve InputPane göstermek için doğrudan API desteği yoktur. Sistemi fake etmeye çalışmana gerek yok.

Windows.UI.ViewManagement.InputPane. TryShow ve TryHide yöntemleri, Windows Phone 8.1'de kullanılabilir.

Diğer seçenek, kullanıcı Enter'a girdiğinde odağı daha uygun bir kontrole taşımak olacaktır.

+0

Bu, yeniden metin kutusuna dokunduğumda klavyenin tekrar gösterilmesini durdurur ... – Denny

9

Bu kullanıcı ENTER tuşuna

private void TextBox_KeyUp(object sender, KeyRoutedEventArgs e) 
    { 
     if(e.Key==Windows.System.VirtualKey.Enter) 
     { 
      Windows.UI.ViewManagement.InputPane.GetForCurrentView().TryHide(); 
     } 
    } 
İlgili konular