Если вы правильно меня поняли, вы можете сделать так, чтобы один обработчик событий вызывал другой.В конце концов, обработчик событий - это просто метод, поэтому:
private void button1_Click(object sender, EventArgs e)
{
// All the code that's currently there
button2_Click(sender, e);
}
Или вы можете извлечь код из обработчиков событий в отдельные методы:
private void button1_Click(object sender, EventArgs e)
{
WriteToOutputDotTxt();
OtherMethodThatWritesToOutputDotTxt();
}
private void button2_Click(object sender, EventArgs e)
{
OtherMethodThatWritesToOutputDotTxt();
}
private void WriteToOutputDotTxt()
{
// Code that's currently in button1_Click
}
private void OtherMethodThatWritesToOutputDotTxt()
{
// Code that's currently in button2_Click
}
Код не' должны содержать в обработчиках событий, на самом деле вам будет проще (если вам интересно!) протестировать ваш код, если вы сможете отделить его от своего пользовательского интерфейса.Например, вы можете иметь класс с именем ProcessOutputFile
и переместить методы WriteToOutputDotTxt
и OtherMethodThatWritesToOutputDotTxt
в этот класс.Тогда гораздо проще писать тесты для этого кода, поскольку он не «привязан» к коду пользовательского интерфейса.