private void txtIp_KeyPress(object sender, KeyPressEventArgs e)
        {
            //txtIp_KeyDown(sender, e);
            Console.WriteLine("Pressed: " + e.KeyChar);
            int    pos  = txtIp.SelectionStart;
            string orig = txtIp.Text;

            if (pos < txtIp.Mask.Length && pos < orig.Length && txtIp.Text[pos] == ' ')
            {
                MaskedTextResultHint hint = MaskedTextResultHint.DigitExpected;
                if (txtIp.MaskedTextProvider.VerifyChar(e.KeyChar, pos, out hint))
                {
                    if (txtIp.MaskedTextProvider.Replace(e.KeyChar, pos))
                    {
                        Console.WriteLine(txtIp.MaskedTextProvider.ToDisplayString());
                        txtIp.MaskedTextProvider.InsertAt(e.KeyChar, pos);
                    }
                    else
                    {
                        Console.WriteLine("Error replacing.");
                    }
                }
                else
                {
                    Console.WriteLine("Hint: " + hint.ToString());
                }
            }
        }