Текст руководства при наборе текста в поле c# - PullRequest
0 голосов
/ 03 февраля 2020

Я новичок в этом, так что не уверен, что это просто или безумно сложно, но мне хотелось бы, чтобы после 6 символов в текстовом поле a - появлялось, а затем они продолжали печатать abit, как при вводе номера лицензии. в windows и он автоматически заполняет поле при go.

1 Ответ

0 голосов
/ 03 февраля 2020

Добавьте событие KeyPress в текстовое поле, поэтому каждый раз, когда вы изменяете текст, оно добавляет «-», если это необходимо. Примерно так:

private void textBox_KeyPress(object sender, KeyPressEventArgs e)
{
    if (Char.IsControl(e.KeyChar) == false)
    {
        var tb = (sender as TextBox);
        var text = tb.Text;
        var blocks = text.Split('-');
        var lastBlock = blocks.Last();
        if (lastBlock.Length == 6)
        {
            tb.Text += "-";
            tb.SelectionStart = tb.Text.Length;
        }
    }
}

Хотя при вводе '-' есть ошибка, так как она используется в качестве разделителя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...