private void UpdateLineNumbers()
        {
            Point pt = new Point(0, 0);

            int firstIndex = MainTextBox.GetCharIndexFromPosition(pt);
            int firstLine  = MainTextBox.GetLineFromCharIndex(firstIndex);

            pt.X = ClientRectangle.Width;
            pt.Y = ClientRectangle.Height;

            int lastIndex = MainTextBox.GetCharIndexFromPosition(pt);
            int lastLine  = MainTextBox.GetLineFromCharIndex(lastIndex);

            LineNumbers.SelectionAlignment = HorizontalAlignment.Center;
            LineNumbers.Text  = "";
            LineNumbers.Width = GetWidth();

            if (MainTextBox.Lines.Length > 1)
            {
                for (int i = firstLine; i <= lastLine + 1; i++)
                {
                    int lineNum = (i + 1);
                    if (lineNum <= Lines.Length)
                    {
                        LineNumbers.Text += (i + 1) + "\n";
                    }
                }
            }
            else
            {
                LineNumbers.Text += 1 + "\n";
            }
        }