Using the Touch Keyboard for non-TextBox Input


  • I have an app that allows the user to enter a grid of letters. However, I am not using TextBoxes to receive or display the letters (I am using the Dispatcher.AcceleratorKeyActivated event and dynamically generated TextBlocks). I am not using TextBoxes because TextBlocks are easier to format and because each one will never have more than 1 letter in it. However, because I am not using TextBoxes, the Touch Keyboard is not displayed, which means the user cannot enter their letters. My app works perfectly when using Windows 8 on a desktop or when I am testing it through remote desktop (which is what I have been doing) because I have a keyboard. It would even work great for people using tablets with a keyboard (such as the Surface), but when using a tablet that has only touch input available, my app would currently be useless. How can I manually show/hide the touch keyboard? Thanks.

    Nathan Sokalski njsokalski@hotmail.com http://www.nathansokalski.com/

    Tuesday, May 06, 2014 5:38 PM


  • You cannot manually show or hide the touch keyboard. It is under the user's control.

    The touch keyboard will by default show when the user touches on a text input control. If you don't want to use a built-in text input control (like the TextBox) then you can implement your own by providing the appropriate accessibility information to support the text pattern.

    See The touch keyboard and the Input: Touch keyboard sample


    Tuesday, May 06, 2014 8:09 PM