Gets the
Error describing a misspelled word and its suggestions. This word is displayed in the spell checked control at the specified client coordinates. Null is returned if the word at the location is spelled correctly or if there is no word at the location.
'Declaration
Public Function GetErrorAtPoint( _
ByVal As Object, _
ByVal As Point _
) As Error
Parameters
- spellCheckTarget
- The spell checked control where the word is displayed.
- location
- The client coordinates in the spell checked control where the word is.
Return Value
A
Error instance describing the error. Null if there is no misspelled word at the location.
This sample shows how to determine if the user has clicked an underlined error in a spell checked rich text box.
Imports Infragistics.Win.UltraWinSpellChecker
'A reference to the last clicked error in the rich text box (Nothing if no error was clicked last)
Private lastClickedError As [Error] = Nothing
Private Sub contextMenuAddToDictionary_Click(ByVal sender As Object, ByVal e As EventArgs)
'Add the last clicked error to the user dictionary
Me.ultraSpellChecker1.AddWordToUserDictionary(Me.lastClickedError.CheckedWord)
End Sub
Private Sub contextMenuIgnoreAll_Click(ByVal sender As Object, ByVal e As EventArgs)
'Ignore all instances of the last clicked error
Me.ultraSpellChecker1.IgnoreAll(Me.lastClickedError.CheckedWord)
End Sub
Private Sub contextMenuSuggestion_Click(ByVal sender As Object, ByVal e As System.EventArgs)
'Get the menu item that was clicked
Dim suggestionItem As MenuItem = sender
'Select the error in the rich text box
Me.richTextBox1.Select( _
Me.lastClickedError.StartIndex, _
Me.lastClickedError.EndIndex - Me.lastClickedError.StartIndex + 1)
'Replace the selected error with the suggestion that was clicked
Me.richTextBox1.SelectedText = suggestionItem.Text
End Sub
Private Sub richTextBox1_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) Handles richTextBox1.MouseDown
'Get the error at the point where the user clicked in the rich text box
Dim point As Point = New Point(e.X, e.Y)
Me.lastClickedError = Me.ultraSpellChecker1.GetErrorAtPoint(Me.richTextBox1, point)
End Sub
Private Sub spellingContextMenu_Popup(ByVal sender As Object, ByVal e As EventArgs) Handles spellingContextMenu.Popup
'Clear the menu items previously added to the context menu
Me.spellingContextMenu.MenuItems.Clear()
'If the last clicked spot on the rich text box was over an error...
If (Not Me.lastClickedError Is Nothing) Then
'If there are no suggestions...
If (Me.lastClickedError.Suggestions.Count = 0) Then
'Add the "no spelling suggestions" menu item and disable it
Dim noSuggestionsItem As MenuItem = Me.spellingContextMenu.MenuItems.Add("(no spelling suggestions)")
noSuggestionsItem.Enabled = False
'Otherwise, if there are suggestions...
Else
'Add suggestion menu items to the context menu
Dim i As Integer
For i = 0 To Me.lastClickedError.Suggestions.Count - 1
Me.spellingContextMenu.MenuItems.Add( _
Me.lastClickedError.Suggestions(i), _
New EventHandler(AddressOf Me.contextMenuSuggestion_Click))
Next
End If
'Add a separator item to the context menu
Me.spellingContextMenu.MenuItems.Add("-")
'Add the "Add to Dictionary" menu item
Dim addItem As MenuItem = Me.spellingContextMenu.MenuItems.Add( _
"Add to Dictionary", _
New EventHandler(AddressOf Me.contextMenuAddToDictionary_Click))
'Add the "Ignore All" menu item
Me.spellingContextMenu.MenuItems.Add( _
"Ignore All", _
New EventHandler(AddressOf Me.contextMenuIgnoreAll_Click))
End If
End Sub
'Declaration
Public Function GetErrorAtPoint( _
ByVal As Object, _
ByVal As Point _
) As Error
using System.Windows.Forms;
using Infragistics.Win.UltraWinSpellChecker;
//A reference to the last clicked error in the rich text box (null if no error was clicked last)
private Error lastClickedError = null;
private void contextMenuAddToDictionary_Click(object sender, System.EventArgs e)
{
//Add the last clicked error to the user dictionary
this.ultraSpellChecker1.AddWordToUserDictionary( this.lastClickedError.CheckedWord );
}
private void contextMenuIgnoreAll_Click(object sender, System.EventArgs e)
{
//Ignore all instances of the last clicked error
this.ultraSpellChecker1.IgnoreAll( this.lastClickedError.CheckedWord );
}
private void contextMenuSuggestion_Click(object sender, System.EventArgs e)
{
//Get the menu item that was clicked
MenuItem suggestionItem = (MenuItem)sender;
//Select the error in the rich text box
this.richTextBox1.Select(
this.lastClickedError.StartIndex,
this.lastClickedError.EndIndex - this.lastClickedError.StartIndex + 1 );
//Replace the selected error with the suggestion that was clicked
this.richTextBox1.SelectedText = suggestionItem.Text;
}
private void richTextBox1_MouseDown(object sender, MouseEventArgs e)
{
//Get the error at the point where the user clicked in the rich text box
Point point = new Point( e.X, e.Y );
this.lastClickedError = this.ultraSpellChecker1.GetErrorAtPoint( this.richTextBox1, point );
}
private void spellingContextMenu_Popup(object sender, System.EventArgs e)
{
//Clear the menu items previously added to the context menu
this.spellingContextMenu.MenuItems.Clear();
//If the last clicked spot on the rich text box was over an error...
if( this.lastClickedError != null )
{
//If there are no suggestions...
if( this.lastClickedError.Suggestions.Count == 0 )
{
//Add the "no spelling suggestions" menu item and disable it
MenuItem noSuggestionsItem = this.spellingContextMenu.MenuItems.Add( "(no spelling suggestions)" );
noSuggestionsItem.Enabled = false;
}
//Otherwise, if there are suggestions...
else
{
//Add suggestion menu items to the context menu
for( int i = 0; i < this.lastClickedError.Suggestions.Count; i++ )
{
this.spellingContextMenu.MenuItems.Add(
this.lastClickedError.Suggestions[ i ],
new EventHandler( this.contextMenuSuggestion_Click ) );
}
}
//Add a separator item to the context menu
this.spellingContextMenu.MenuItems.Add( "-" );
//Add the "Add to Dictionary" menu item
MenuItem addItem = this.spellingContextMenu.MenuItems.Add(
"Add to Dictionary",
new EventHandler( this.contextMenuAddToDictionary_Click ) );
//Add the "Ignore All" menu item
this.spellingContextMenu.MenuItems.Add(
"Ignore All",
new EventHandler( this.contextMenuIgnoreAll_Click ) );
}
}
'Declaration
Public Function GetErrorAtPoint( _
ByVal As Object, _
ByVal As Point _
) As Error
Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2