У меня есть MaskedTextBox со следующей маской
MaskedTextBox.Mask = @"000\.000\.000\.000";
Для теста я создаю textBox, где я показываю длину текста, написанного в MaskedTextBox. Сначала я добавляю EventHandler:
MaskedTextBox.TextChanged += new EventHandler(MaskedTextBoxTextChanged);
и напишите тестовую функцию для обработки поведения MaskedTextBox:
private void MaskedTextBoxTextChanged(object sender, EventArgs e)
{
MaskedTextBox mtb = sender as MaskedTextBox;
TextBox.Text = mtb.Text.Length.ToString();
}
Результат совсем нехороший, потому что, когда я набираю первый символ в MaskedTextBox слева, свойства длины должны быть равны 1. Это не 1, а 12, и это число увеличивается после 12 позиции. Как исправить этот баг? Более того, я пытаюсь заполнить этот MaskedTextBox нулевым символом после вызова метода MaskedTextBoxTextChanged и хочу использовать свойства Text.Length.