I want to hide the soft keyboard when the Enter key is tapped, but no solutions works for me properly. (Windows Phone 8.1 Universal App)
This one just doesn't work:
if (e.Key == VirtualKey.Enter)
{
textBox.IsEnabled = false;
textBox.IsEnabled = true;
}
A method like this:
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;
}
works only partially. It's hiding keyboard only when I'm using textbox for the first time. On the second time keyboard is reappearing.
There is direct API support to hide and show the InputPane. You don't need to try to fake out the system.
The Windows.UI.ViewManagement.InputPane.TryShow and TryHide methods are available on Windows Phone 8.1.
The other option would be to move the focus to a more appropriate control when the user hits Enter.
This is the complete code to hide the keyboard when the user press the enter key
private void TextBox_KeyUp(object sender, KeyRoutedEventArgs e)
{
if(e.Key==Windows.System.VirtualKey.Enter)
{
Windows.UI.ViewManagement.InputPane.GetForCurrentView().TryHide();
}
}
I just did something like that and it's working:
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;
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With