Windows VB.Net Tutorial

Imports System.Windows.Forms
public class WordSpellChecker
   public Shared Sub Main
        Application.Run(New Form1)
   End Sub
End class
Public Class Form1
    Dim objWordApp As Word.Application
    Dim objCorrectionsCollection As Word.SpellingSuggestions
    Dim objSpellCollection As Word.ProofreadingErrors
    Private Sub OpenWord()
        objWordApp = New Word.Application
    End Sub
    Private Sub CloseWord()
        objWordApp.Documents.Close(Word.WdSaveOptions.wdDoNotSaveChanges)
        objWordApp.Quit()
        objWordApp = Nothing
    End Sub
    Private Sub btnSpellCheckDoc_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSpellCheckDoc.Click
        Dim objRange As Word.Range
        Dim intWord As Integer
        Dim strNewWord As String
        Me.Text = "Starting Word ..."
        Call OpenWord()
        objWordApp.Documents.Add()
        Me.Text = "Checking words..."
        objRange = objWordApp.ActiveDocument.Range
        objRange.InsertAfter(TextBox1.Text)
        objSpellCollection = objRange.SpellingErrors
        If objSpellCollection.Count > 0 Then
            ListBox1.Items.Clear()
            ListBox2.Items.Clear()
            For intWord = 1 To objSpellCollection.Count
                strNewWord = objSpellCollection.Item(intWord).Text
                If ListBox1.FindStringExact(strNewWord) < 0 Then
                    ListBox1.Items.Add(strNewWord)
                End If
            Next
        End If
        Me.Text = "WordSpellChecker"
    End Sub
    Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        Call CloseWord()
    End Sub
    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
        Dim intWord As Integer
        objCorrectionsCollection = objWordApp.GetSpellingSuggestions(ListBox1.Text)
        ListBox2.Items.Clear()
        If objCorrectionsCollection.Count > 0 Then
            For intWord = 1 To objCorrectionsCollection.Count
                ListBox2.Items.Add(objCorrectionsCollection.Item(intWord).Name)
            Next
        Else
            ListBox2.Items.Add("No suggestions!")
        End If
    End Sub
    Private Sub btnReplaceWord_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnReplaceWord.Click
        If ListBox1.SelectedIndex >= 0 And ListBox2.SelectedIndex >= 0 Then
            TextBox1.Text = Replace(TextBox1.Text, _
                ListBox1.SelectedItem, ListBox2.SelectedItem)
            ListBox1.Items.Remove(ListBox1.SelectedIndex)
            ListBox2.Items.Clear()
        End If
    End Sub
End Class
Partial Public Class Form1
    Inherits System.Windows.Forms.Form
     _
    Public Sub New()
        MyBase.New()
        'This call is required by the Windows Form Designer.
        InitializeComponent()
    End Sub
    'Form overrides dispose to clean up the component list.
     _
    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
        If disposing AndAlso components IsNot Nothing Then
            components.Dispose()
        End If
        MyBase.Dispose(disposing)
    End Sub
    'Required by the Windows Form Designer
    Private components As System.ComponentModel.IContainer
    'NOTE: The following procedure is required by the Windows Form Designer
    'It can be modified using the Windows Form Designer.  
    'Do not modify it using the code editor.
     _
    Private Sub InitializeComponent()
        Me.TextBox1 = New System.Windows.Forms.TextBox
        Me.btnSpellCheckDoc = New System.Windows.Forms.Button
        Me.btnReplaceWord = New System.Windows.Forms.Button
        Me.ListBox1 = New System.Windows.Forms.ListBox
        Me.ListBox2 = New System.Windows.Forms.ListBox
        Me.Label1 = New System.Windows.Forms.Label
        Me.Label2 = New System.Windows.Forms.Label
        Me.SuspendLayout()
        '
        'TextBox1
        '
        Me.TextBox1.Location = New System.Drawing.Point(10, 9)
        Me.TextBox1.Multiline = True
        Me.TextBox1.Name = "TextBox1"
        Me.TextBox1.Size = New System.Drawing.Size(352, 192)
        Me.TextBox1.TabIndex = 0
        Me.TextBox1.Text = "This is some example text that contains misspelled words. For example, Visual Bas" & _
            "ci Espress."
        '
        'btnSpellCheckDoc
        '
        Me.btnSpellCheckDoc.Location = New System.Drawing.Point(369, 9)
        Me.btnSpellCheckDoc.Name = "btnSpellCheckDoc"
        Me.btnSpellCheckDoc.Size = New System.Drawing.Size(158, 23)
        Me.btnSpellCheckDoc.TabIndex = 3
        Me.btnSpellCheckDoc.Text = "SpellCheck Document"
        '
        'btnReplaceWord
        '
        Me.btnReplaceWord.Location = New System.Drawing.Point(369, 306)
        Me.btnReplaceWord.Name = "btnReplaceWord"
        Me.btnReplaceWord.Size = New System.Drawing.Size(158, 23)
        Me.btnReplaceWord.TabIndex = 4
        Me.btnReplaceWord.Text = "Replace Word"
        '
        'ListBox1
        '
        Me.ListBox1.FormattingEnabled = True
        Me.ListBox1.Location = New System.Drawing.Point(10, 232)
        Me.ListBox1.Margin = New System.Windows.Forms.Padding(3, 1, 3, 3)
        Me.ListBox1.Name = "ListBox1"
        Me.ListBox1.Size = New System.Drawing.Size(168, 95)
        Me.ListBox1.TabIndex = 1
        '
        'ListBox2
        '
        Me.ListBox2.FormattingEnabled = True
        Me.ListBox2.Location = New System.Drawing.Point(196, 232)
        Me.ListBox2.Margin = New System.Windows.Forms.Padding(3, 1, 3, 3)
        Me.ListBox2.Name = "ListBox2"
        Me.ListBox2.Size = New System.Drawing.Size(166, 95)
        Me.ListBox2.TabIndex = 2
        '
        'Label1
        '
        Me.Label1.AutoSize = True
        Me.Label1.Location = New System.Drawing.Point(10, 217)
        Me.Label1.Margin = New System.Windows.Forms.Padding(3, 3, 3, 0)
        Me.Label1.Name = "Label1"
        Me.Label1.Size = New System.Drawing.Size(94, 14)
        Me.Label1.TabIndex = 5
        Me.Label1.Text = "Misspelled words:"
        '
        'Label2
        '
        Me.Label2.AutoSize = True
        Me.Label2.Location = New System.Drawing.Point(196, 217)
        Me.Label2.Margin = New System.Windows.Forms.Padding(3, 3, 3, 0)
        Me.Label2.Name = "Label2"
        Me.Label2.Size = New System.Drawing.Size(94, 14)
        Me.Label2.TabIndex = 6
        Me.Label2.Text = "Alternative words:"
        '
        'Form1
        '
        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
        Me.ClientSize = New System.Drawing.Size(539, 342)
        Me.Controls.Add(Me.Label2)
        Me.Controls.Add(Me.Label1)
        Me.Controls.Add(Me.ListBox2)
        Me.Controls.Add(Me.ListBox1)
        Me.Controls.Add(Me.btnReplaceWord)
        Me.Controls.Add(Me.btnSpellCheckDoc)
        Me.Controls.Add(Me.TextBox1)
        Me.Name = "Form1"
        Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
        Me.Text = "WordSpellChecker"
        Me.ResumeLayout(False)
        Me.PerformLayout()
    End Sub
    Friend WithEvents TextBox1 As System.Windows.Forms.TextBox
    Friend WithEvents btnSpellCheckDoc As System.Windows.Forms.Button
    Friend WithEvents btnReplaceWord As System.Windows.Forms.Button
    Friend WithEvents ListBox1 As System.Windows.Forms.ListBox
    Friend WithEvents ListBox2 As System.Windows.Forms.ListBox
    Friend WithEvents Label1 As System.Windows.Forms.Label
    Friend WithEvents Label2 As System.Windows.Forms.Label
End Class