SaguiItay
SaguiItay

Reputation: 2215

How to programmatically hide the keyboard

I have a textbox with a button inside (Telerik's RadTextBox with an Action configured). When the user presses the Action, a progress bas is displayed, the screen goes dark, and some magic happens.

My problem is that since the action doesn't result in the textbox losing focus, the on-screen keyboard is not hidden, and keeps covering half the screen.

I would like to programmatically hide the on-screen keyboard, but don't know how.

Upvotes: 3

Views: 3702

Answers (3)

Lalit kumar
Lalit kumar

Reputation: 2485

here lot solution is available for a Textblock only but in my case AutoCompleteBox

  <toolkit:AutoCompleteBox Name="autoComplateTxt"
                                             Grid.Row="4"
                                             Margin="15,5,2,10"
                                             Padding="0"
                                             Height="65"
                                             Text=""
                                             BorderThickness="1"
                                             BorderBrush="Black"
                                             VerticalAlignment="Center"
                                             
                                          DropDownClosed="autoComplateTxt_DropDownClosed"
                                              />

 private void autoComplateTxt_DropDownClosed(object sender, RoutedPropertyChangedEventArgs<bool> e)
    {
        this.Focus();
    }

Upvotes: 0

matthewsheets
matthewsheets

Reputation: 4573

Instead try disabling and then enabling the textbox in question in an appropriate place (like once a query has been submitted or an action triggered):

   TextBox.IsEnabled = false;
   TextBox.IsEnabled = true;

(Via https://stackoverflow.com/a/23905874/1963978)

Not clean, but it does the job (in Windows 10 mobile).

Upvotes: 2

Mike Perrenoud
Mike Perrenoud

Reputation: 67898

Just set focus to the main page:

this.Focus();

this will focus a control that doesn't use the keyboard and thus hide the keyboard. Unfortunately there is no API to the keyboard to hide it.

Upvotes: 9

Related Questions