Category / Section
How to access text associated with individual lines in the selected text area of WinForms SyntaxEditor (EditControl)?
1 min read
Selected text
You could get the text associated with each line in the selected text region of the EditControl using the code below.
C#
string cleanedSQL = ""; if (this.editControl1.SelectedText != "") { // Get the start and end points of the selection CoordinatePoint start = this.editControl1.Selection.Top; CoordinatePoint end = this.editControl1.Selection.Bottom; string lineText = ""; for (int i=start.VirtualLine; i<=end.VirtualLine; i++) { // Get the line object ILexemLine lexemLine = this.editControl1.GetLine(i); // Get the tokens in each line object and append them to get the line text foreach (ILexem lexem in lexemLine.LineLexems) { lineText += lexem.Text; } // Store each of these line text cleanedSQL += lineText + "\n"; lineText=""; } }
VB
Dim cleanedSQL As String = "" If Me.editControl1.SelectedText <> "" Then ' Get the start and end points of the selection Dim start As CoordinatePoint = Me.editControl1.Selection.Top Dim end As CoordinatePoint = Me.editControl1.Selection.Bottom Dim lineText As String = "" Dim i As Integer For i = start.VirtualLine To i<- 1 Step =end.VirtualLine ' Get the line object Dim lexemLine As ILexemLine = Me.editControl1.GetLine(i) ' Get the tokens in each line object and append them to get the line text Dim lexem As ILexem For Each lexem In lexemLine.LineLexems lineText += lexem.Text Next ' Store each of these line text cleanedSQL += lineText + "\n" lineText="" Next End If
Reference link: https://help.syncfusion.com/windowsforms/syntax-editor/intellisense