Повторите те же шаги для каждого события textChanged - PullRequest
0 голосов
/ 25 июня 2019

У меня в проекте 5 текстовых полей.Каждое TextBox должно принимать только цифры.Для этого я создал функцию, которая принимает не подготовленный текст и возвращает правильный.Теперь мне интересно, есть ли какой-нибудь более простой способ выполнить это действие на каждом TextBox, на каждом TextChanged событии без повторения почти одного и того же кода?

private void TextGoldPack_TextChanged(object sender, EventArgs e)
{
    (sender as TextBox).Text = Only_digits((sender as TextBox).Text);
}

private void TextGoldTake_TextChanged(object sender, EventArgs e)
{
    //repeat here and on every _TextChanged event
}

Ответы [ 2 ]

3 голосов
/ 25 июня 2019

Если я правильно вас понимаю, то, что он называется TextGoldTake_TextChanged, не означает, что это единственное текстовое поле, которое может использовать этот код. На вкладке событий вы можете установить функцию TextChanged для всех текстовых полей, чтобы привести к этой функции. Если это поможет, переименуйте его в то, что не похоже на текстовое поле, например TextChanged.

enter image description here

1 голос
/ 25 июня 2019

Измените все TextBox для ссылки на этот метод при TextChanged. Используйте свойство sender для получения фактического вызывающего TextBox.

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