User Dictionary

    Domain-specific terms, abbreviations, and other words absent from the general-purpose dictionary are flagged by inline spell checking, and a document full of part numbers, legal terms, or a customer's name will light up with squiggles on nearly every one of them. The user dictionary fixes that: it lets a user add such a word once and never see it flagged again, in this session or a later one, without you touching the dictionary file shipped with your app. This page shows how to enable the feature, point it at a writable file, and what the user sees when they add a word.

    What the user sees

    When inline spell checking flags a word, the user right-clicks it. The suggestion context menu appears, and below the suggested corrections is an entry labelled Add to Dictionary. Selecting it removes the squiggle immediately, persists the word to a file, and prevents the word from being flagged again, even in a later session.

    WPF HTML Editor's right-click suggestion menu showing the 'Add to Dictionary' option for a flagged veterinary drug name (carprofen) that the built-in dictionary did not know.
    WPF HTML Editor's right-click suggestion menu showing the 'Add to Dictionary' option for a flagged veterinary drug name (carprofen) that the built-in dictionary did not know.

    Turning the feature on

    Two settings on SpellCheckOptions control this: one enables the menu entry, the other sets the file path where words are stored. A common pattern uses each user's Windows profile folder so the dictionary follows them across workstations:

    RecordEditor.SpellCheckOptions.EnableUserDictionary = true; var perUserFile = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "VetRecords", "spellcheck-user-dictionary.txt"); RecordEditor.SpellCheckOptions.DictionaryFile.UserDictionaryFilePath = perUserFile;
    RecordEditor.SpellCheckOptions.EnableUserDictionary = True Dim perUserFile = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "VetRecords", "spellcheck-user-dictionary.txt") RecordEditor.SpellCheckOptions.DictionaryFile.UserDictionaryFilePath = perUserFile

    The file is plain text, one word per line, created on first save if it does not exist. Back it up by copying the file, or pre-seed it with existing shorthand for new users.

    The WPF HTML Editor's plain-text user dictionary file opened in Notepad showing one custom veterinary term per line, ready for distribution to a team.
    The WPF HTML Editor's plain-text user dictionary file opened in Notepad showing one custom veterinary term per line, ready for distribution to a team.

    Localizing the menu label

    The Add to Dictionary label can be overridden, for example to localize it:

    RecordEditor.SpellCheckOptions.AddToDictionaryText = "Agregar al diccionario";

    The same property is the hook for any rebrand - a customer that wants the menu to read Add to Company Glossary only needs to change one string.

    Using a custom spell-check engine

    When a custom spell-check engine is used instead of the built-in one (see Using a Custom Spell-Check Engine), the file-path setting is irrelevant. The Add to Dictionary menu still appears, but the editor calls AddToUserDictionary(string word) on the custom engine instead. Whether the word is persisted to a local file, sent to a remote API, or held only in memory for the session is up to the engine implementation. The end-user experience - right-click, click, squiggle gone - is identical.

    Ask your AI to do this

    Let your assistant do this for you. With the SpiceLogic MCP server connected, paste this into Claude Code, Cursor, or VS Code Copilot in agent mode.

    Using the SpiceLogic WPF HTML Editor already referenced in my project, turn on the user dictionary so domain terms stop getting flagged by spell check: set SpellCheckOptions.EnableUserDictionary to true and point SpellCheckOptions.DictionaryFile.UserDictionaryFilePath at a per-user file under the app data folder, for example under a "ClinicNotes" subfolder, so the right-click "Add to Dictionary" entry persists new words across sessions. Also localize that menu entry by setting SpellCheckOptions.AddToDictionaryText to a Spanish label. Look up the exact SpellCheckOptions members with the SpiceLogic MCP tools before writing any code.

    Last updated on May 15, 2026

    Put this into practice.

    WPF HTML Editor Control ships with free C# and VB.NET sample projects and a 14-day evaluation.

    Prefer a guided look? Book a free live demo with our engineers - live on Zoom or Teams, never a chatbot.