We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. (Last updated on: November 16, 2018).
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

How to implement the ContextTooltip feature in WinForms SyntaxEditor (EditControl)?

Platform: WinForms |
Control: EditControl |
Published Date: April 30, 2011 |
Last Revised Date: December 12, 2019

Tooltip

The ContextTooltip can be populated with additional information on the corresponding lexem by handling the EditControl's UpdateContextTooltip event. Please refer the below code snippets.

C#

private void editControl1_UpdateContextToolTip(object sender, Syncfusion.Windows.Forms.Edit.UpdateTooltipEventArgs e)
{
   if( e.Text == string.Empty )
   {
       Point pointVirtual = editControl1.PointToVirtualPosition( new Point( e.X, e.Y ) );
       if( pointVirtual.Y > 0 )
       {
           //Get the current line
           ILexemLine line = editControl1.GetLine( pointVirtual.Y );
           if(line != null)
           {
               //Get tokens from the current line
               ILexem lexem = line.FindLexemByColumn( pointVirtual.X );
               if( lexem != null )
               {
                   IConfigLexem configLexem = lexem.Config as IConfigLexem;
                   e.Text = "This is of type " + configLexem.Format.Name + " : " + lexem.Text;
               }
           }
       }
   }
}

 

VB

Private Sub editControl1_UpdateContextToolTip(ByVal sender As Object, ByVal e As Syncfusion.Windows.Forms.Edit.UpdateTooltipEventArgs) Handles editControl1.UpdateContextToolTip
    If e.Text = String.Empty Then
       Dim pointVirtual As Point = editControl1.PointToVirtualPosition(New Point(e.X, e.Y))
       If pointVirtual.Y > 0 Then
          ''Get the current line
          Dim line As ILexemLine = editControl1.GetLine(pointVirtual.Y)
          If Not (line Is Nothing) Then
             ''Get tokens from the current line
             Dim lexem As ILexem = line.FindLexemByColumn(pointVirtual.X)
             If Not (lexem Is Nothing) Then
                Dim configLexem As IConfigLexem = lexem.Config
                e.Text = "This is of type " + configLexem.Format.Name + " : " + lexem.Text
             End If
          End If
       End If
    End If
End Sub

 

Reference link: https://help.syncfusion.com/windowsforms/syntax-editor/intellisense#configure-context-tooltip

2X faster development

The ultimate WinForms UI toolkit to boost your development speed.
ADD COMMENT
You must log in to leave a comment

Please sign in to access our KB

This page will automatically be redirected to the sign-in page in 10 seconds.

Up arrow icon

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon