ARTICLE

SpellChecker in WPF using VB.NET

Posted by Shalini Juneja Articles | WPF using VB.NET June 01, 2011
In this article we demonstrate how we can check Spellings in WPF.
Download Files:
 
Reader Level:

Here in this article I am explaining about WPF SpellChecker feature. WPF has an inbuilt feature of SpellChecking. TextBox and RichTextBox control in WPF offers SpellCheck support just like Microsoft Word, as Typed words are checked and correct alternatives are offered via a popup menu. To activate the SpellChecker we just need to set SpellCheck.IsEnabled property to True. So with just some lines of code we can implement an importent feature in our  applications. SpellChecker implementation needs a Grid, TextBlock and a TextBox control. All the controls in ToolBox looks like below images.

Grid

spell2.gif

TextBlock

spell3.gif

TextBox

spell4.gif

This ensures the TextBox automatically detect misspelled words and will put an underline on the word.

When you drag all the controls and sets properties of controls your window will look like below.

spell1.gif

Step 1

Firstly we drag a grid and will set the row height and column Height. As shown in the below code Snippet.

<Grid>
        <Grid.RowDefinitions >
            <RowDefinition Height="10" />
            <RowDefinition Height=" 10"/>
            <RowDefinition Height=" 10"/>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="10" />   
       
</Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width=" 10"/>
            <ColumnDefinition Width=" 90"/>
            <ColumnDefinition Width="190"/>
            <ColumnDefinition Width=" Auto"/>
            <ColumnDefinition Width=" 10"/>
        </Grid.ColumnDefinitions>
</Grid>

Step 2

Then add a TextBlock as shown Below.

<TextBlock Grid.ColumnSpan="3" Grid.RowSpan="2" Height="23" HorizontalAlignment="Left" Margin="10,10,0,0" Name="txtsplblc" Text="Type Word For Spell Checking" VerticalAlignment="Top" Width="184" />

Step 3

And Lastly add a TextBox For Spell Checking.

<TextBox Grid.RowSpan="2" Height="23" SpellCheck.IsEnabled="True" AcceptsReturn="True" HorizontalAlignment="Left" Margin="64,10,0,0" Name="txtsplchk" VerticalAlignment="Top" Width="200" Grid.Column="2" Grid.ColumnSpan="3" />

This is my complete XAML code.

<Window x:Class="MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="314" Width
="411">
    <Grid>
        <Grid.RowDefinitions >
            <RowDefinition Height="10" />
            <RowDefinition Height=" 10"/>
            <RowDefinition Height=" 10"/>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="10" />   
       
</Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width=" 10"/>
            <ColumnDefinition Width=" 90"/>
            <ColumnDefinition Width="190"/>
            <ColumnDefinition Width=" Auto"/>
            <ColumnDefinition Width=" 10"/>
        </Grid.ColumnDefinitions>
          <TextBlock Grid.ColumnSpan="3" Grid.RowSpan="2" Height="23" HorizontalAlignment="Left"
Margin="10,10,0,0" Name="txtsplblc" Text="Type Word For Spell Checking" VerticalAlignment="Top" Width="184" />
        <TextBox Grid.RowSpan="2" Height="23" SpellCheck.IsEnabled="True" AcceptsReturn="True"
HorizontalAlignment="Left" Margin="64,10,0,0" Name="txtsplchk" VerticalAlignment="Top" Width="200"
Grid.Column="2" Grid.ColumnSpan="3" />
    </Grid>
</
Window>

When you run the application the window will look like below.

spell6.gif

Now Type a word for Spell Checking.

spell7.gif

When we add some text controls to our window, misspelled words will be highlighted immediately with red zigzag underline, and a context menu will appear with spelling suggestions.

you can select the approriate word by right-clicking on typed word, and can correct with suggested word. Like below.

spell8.gif

Summary

In this article we learned that how to check Spellings in WPF.

Login to add your contents and source code to this article
share this article :
post comment
 
Nevron Diagram
Become a Sponsor
PREMIUM SPONSORS
  • Finally – a virtual platform that delivers next-generation Windows Server 2008 Hyper-V virtualization technology from a managed hosting partner you can truly depend on. Visit www.maximumasp.com/max for a FREE 30 day trial. Hurry offer ends soon. Climb aboard the MaxV platform and take advantage of High Availability, Intelligent Monitoring, Recurrent Backups, and Scalability – with no hassle or hidden fees. As a managed hosting partner focused solely on Microsoft technologies since 2000, MaximumASP is uniquely qualified to provide the superior support that our business is built on. Unparalleled expertise with Microsoft technologies lead to working directly with Microsoft as first to offer IIS 7 and SQL 2008 betas in a hosted environment; partnering in the Go Live Program for Hyper-V; and product co-launches built on WS 2008 with Hyper-V technology.
    The leading .NET charting control now features PDF, Flash and Silverlight export, visualization of large datasets and more. Deliver true charting functionality to your BI, Scorecard, Presentation or Scientific apps. Download evaluation now.
Team Foundation Server Hosting
Become a Sponsor