Starts spell checking the given string.
Namespace:
C1.Win.C1SpellAssembly: C1.Win.C1Spell.2 (in C1.Win.C1Spell.2.dll)
Syntax
C# |
---|
public string CheckString( string str, BadWordDialogEnum dialog ) |
Visual Basic (Declaration) |
---|
Public Function CheckString ( _ str As String, _ dialog As BadWordDialogEnum _ ) As String |
Parameters
- str
- Type: System..::.String
String to check.
- dialog
- Type: C1.Win.C1Spell..::.BadWordDialogEnum
The BadWordDialogEnum object that represents whether the bad-word dialog will be used and the language that should be used to display it.
Return Value
Checked string.
Remarks
Use the LastSpellError property and the SpellError event to find out the occurred errors.
Examples
The following code uses the CheckString method to build a list of suggestions for misspelled words:
- Visual Basic

Private Sub C1Spell1_TypingError(ByVal sender As System.Object, ByVal e As C1.Win.C1Spell.TypingErrorEventArgs) Handles C1Spell1.TypingError ' use CheckString method to build a list of suggestions C1Spell1.CheckString(e.ErrWord, C1.Win.C1Spell.BadWordDialogEnum.NoDialog) ' if no suggestions, just quit If C1Spell1.Suggestions.Count = 0 Then Exit Sub ' now select the word SetSelection(e.SelStart, e.SelLength) ' only one suggestion, assume it is the correct word ' replace it automatically If C1Spell1.Suggestions.Count = 1 Then ChangeText(C1Spell1.Suggestions(0)) Exit Sub End If ' build the context menu if there are at least two suggestions ' and put the suggestion words as the menu texts Dim i As Integer For i = 1 To 5 Me.ContextMenuStrip1.MenuItems(i).Visible = False Next Me.ContextMenuStrip1.MenuItems(0).Text = e.ErrWord & " (not in dictionary)" For i = 1 To 5 If i > 5 Then Exit For If C1Spell1.Suggestions.Count < i Then Exit For Me.ContextMenuStrip1.MenuItems(i).Text = C1Spell1.Suggestions(i - 1) Me.ContextMenuStrip1.MenuItems(i).Visible = True Next ' Show the context menu at the current caret position ' note that the caret position is the screen position and it ' should be transferred to the client position for each text box Dim pos As Point Dim x, y x = C1Spell1.CaretPosX y = C1Spell1.CaretPosY pos = New Point(x, y) Select Case C1Spell1.IntegerTag Case 1 pos = TextBox1.PointToClient(pos) Me.ContextMenuStrip1.Show(TextBox1, pos) Case 2 pos = TextBox2.PointToClient(pos) Me.ContextMenuStrip1.Show(TextBox2, pos) Case 3 pos = TextBox3.PointToClient(pos) Me.ContextMenuStrip1.Show(TextBox3, pos) End Select End Sub ' this sub routine will select the error word Private Sub SetSelection(ByVal start, ByVal length) Select Case C1Spell1.IntegerTag Case 1 TextBox1.Select(start, length) Case 2 TextBox2.Select(start, length) Case 3 TextBox3.Select(start, length) End Select End Sub |
- C#

privatevoid c1Spell1_TypingError(object sender, C1.Win.C1Spell.TypingErrorEventArgs e) { // use CheckString method to build a list of suggestions c1Spell1.CheckString(e.ErrWord, C1.Win.C1Spell.BadWordDialogEnum.NoDialog); // if no suggestions, just quitif ( c1Spell1.Suggestions.Count == 0 ) return; // now select the word SetSelection(e.SelStart, e.SelLength); // only one suggestion, assume it is the correct word// replace it automaticallyif ( c1Spell1.Suggestions.Count == 1 ) { ChangeText(c1Spell1.Suggestions[0]); return; } // build the context menu if there are at least two suggestions// and put the suggestion words as the menu textsint i; for (i = 1; i <= 5; i++) this.contextMenuStrip1.MenuItems[i].Visible = false; this.contextMenuStrip1.MenuItems[0].Text = e.ErrWord + " (not in dictionary)"; for (i = 1; i <= 5; i++) if ( c1Spell1.Suggestions.Count < i ) break; this.contextMenuStrip1p.MenuItems[i].Text = c1Spell1.Suggestions[i - 1]; this.contextMenuStrip1.MenuItems[i].Visible = true; } // Show the context menu at the current caret position// note that the caret position is the screen position and it// should be transferred to the client position for each text box Point pos; int x, y; x = c1Spell1.CaretPosX; y = c1Spell1.CaretPosY; pos = new Point(x, y); switch (c1Spell1.IntegerTag) { case1: pos = textBox1.PointToClient(pos); this.contextMenuStrip1.Show(TextBox1, pos); case2: pos = textBox2.PointToClient(pos); this.contextMenuStrip1.Show(TextBox2, pos); case3: pos = textBox3.PointToClient(pos); this.contextMenuStrip1.Show(TextBox3, pos); } } // this sub routine will select the error wordprivatevoid SetSelection( start, length) { switch (c1Spell1.IntegerTag) { case1: textBox1.Select(start, length); case2: textBox2.Select(start, length); case3: textBox3.Select(start, length); } } |
For an example using the CheckString method, see Step 3: Provide As-You-Type Spell Checking (Top Panel).