Вынести события кнопок и полей в отдельный файл WPF
У меня в приложении имеется много текстбоксов и кнопок. На каждый текстбокс по одному событию. Снизу предоставляю пример. Таких событий около 30. Хочется вынести эти события в отдельный файл, чтобы не засорять основной файл формы.
private void AuthorBook_TextBox_TextChanged(object sender, TextChangedEventArgs e)
{
AuthorBook_TextBox.Foreground = Brushes.Black;
AuthorBook_TextBox.ToolTip = null;
}
Ответы (1 шт):
Учить MVVM, привязки данных (Binding) и команды (ICommand). В WPF обработчиками событий в таких случаях никто не пользуется.
С другой стороны, возможно проблема в том, что вы не в курсе, что такое sender. А это по сути текстбокс, вызвавший событие.
Заведите такой обработчик.
private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
{
TextBox tbx = (TextBox)sender;
tbx.Foreground = Brushes.Black;
tbx.ToolTip = null;
}
Теперь всем текстбоксам в XAML назначаете этот обработчик. А дубликаты методов спокойно удаляете. Но опять же, лучше воспользоваться советом из самого начала этого ответа.