Guidelines and checklist for spell checking (Windows Store apps)

[ This article is for Windows 8.x and Windows Phone 8.x developers writing Windows Runtime apps. If you’re developing for Windows 10, see the latest documentation ]

Follow these guidelines when using spell checking with text input controls.

Roadmap: How does this topic relate to others? See:

User experience guidelines

Windows Store apps using C++, C#, or Visual Basic provide a built-in spell checker for multiline and single text input boxes, such as TextBox and RichEditBox. Here's an example of the built-in spell checker:

Use spell checking with text input controls for these two purposes:

  • To auto-correct misspellings

    The spell checking engine automatically corrects misspelled words when it’s confident about the correction. For example, the engine automatically changes "teh" to "the".

  • To show alternate spellings

    When the spell checking engine is not confident about the corrections, it adds a red line under the misspelled word and displays the alternates in a context menu when you tap or right-click the word.

Spell checking is turned off by default. You can enable it on by setting the TextBox.IsSpellCheckEnabled property or RichEditBox.IsSpellCheckEnabled property to true. You can disable spell checking for a control by setting its IsSpellCheckEnabled property to false.

Do's and Don'ts


Use spell checking to help users as they enter words or sentences into text input controls. Spell checking works with touch, mouse, and keyboard input.


Don’t use spell checking where a word is not likely to be in the dictionary or where users wouldn’t value spell checking. For example, don’t turn it on for input boxes of telephone numbers or names. Telephone numbers and names are rarely in the dictionary, so spell checking them doesn't do any good and might be distracting.

Don’t disable spell checking just because the current spell checking engine doesn't support your app language. When the spell checker doesn't support a language, it doesn't do anything, so there's no harm in leaving the option on. Also, some users might use an Input Method Editor (IME) to enter another language into your app, and that language might be supported. For example, when building a Chinese app, although the spell checking engine doesn’t recognize Chinese now, don’t turn spell checking off. The user may switch to an English IME and type English into the app; if spell checking is enabled, the English will get spell checked.