System.Windows.Forms.HexBox.PaintHexStringSelected C# (CSharp) Method

PaintHexStringSelected() private method

private PaintHexStringSelected ( Graphics g, byte b, Brush brush, Brush brushBack, Point gridPoint ) : void
g Graphics
b byte
brush Brush
brushBack Brush
gridPoint Point
return void
        void PaintHexStringSelected(Graphics g, byte b, Brush brush, Brush brushBack, Point gridPoint)
        {
            string sB = b.ToString(_hexStringFormat, System.Threading.Thread.CurrentThread.CurrentCulture);
            if(sB.Length == 1)
                sB = "0" + sB;

            PointF bytePointF = GetBytePointF(gridPoint);

            bool isLastLineChar = (gridPoint.X+1 == _iHexMaxHBytes);
            float bcWidth = (isLastLineChar) ? _charSize.Width*2 : _charSize.Width*3;

            g.FillRectangle(brushBack, bytePointF.X, bytePointF.Y, bcWidth, _charSize.Height);
            g.DrawString(sB.Substring(0,1), Font, brush, bytePointF, _stringFormat);
            bytePointF.X += _charSize.Width;
            g.DrawString(sB.Substring(1,1), Font, brush, bytePointF, _stringFormat);
        }