/// <summary>
 /// Method used to invoke the event that is used to report RTB SelectionStart to interested parties
 /// https://docs.microsoft.com/en-us/dotnet/api/system.eventhandler-1?view=netframework-4.7.2
 /// </summary>
 /// <param name="e"></param>
 protected virtual void OnSelectionDataIsInteresting(ClsRichTextBoxSelectionArgs e)
 {
     SelectionDataIsInteresting?.Invoke(this, e);
 }
 public ClsRichTextBox() : base()
 {
     SelectionChanged           += ClsRichTextBox_SelectionChanged;
     objFindMetadata             = new ClsFindMetadata();
     objRichTextBoxSelectionArgs = new ClsRichTextBoxSelectionArgs();
 }
 /// <summary>
 /// Display rich text box selection data
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void ObjRichTextBox_SelectionDataIsInteresting(object sender, ClsRichTextBoxSelectionArgs e)
 {
     objTextBoxStartPos.Text = e.SelectionStart.ToString();
 }