У меня есть класс с событием, затем в другом файле .cs у меня есть другой класс, где я подписываюсь на событие.Но событие никогда не срабатывает успешно, и по какой-то причине событие является нулевым.Что я делаю не так?
Первый класс:
class TestClass
{
public static void CountStart()
{
int CountVal = 0;
do
{
CountVal = CountVal + 1;
if (CountVal % 5 == 0)
{
SimpleEventSender EventSender = new SimpleEventSender();
EventSender.StartEvent();
}
Thread.Sleep(1000);
} while (CountVal < 100);
}
}
Класс события:
public class SimpleEventSender
{
public event EventHandler NewEvent;
public void StartEvent()
{
if (NewEvent != null)
{
NewEvent(this,null);
}
}
}
И класс, в котором я подписываюсь на событие:
public partial class Form1 : Form
{
public Form1()
{
SimpleEventSender newevent1 = new SimpleEventSender();
newevent1.NewEvent += new_event;
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
TestClass class1 = new TestClass();
TestClass.CountStart();
}
public void new_event(object sender, EventArgs e)
{
MessageBox.Show("multiple of 5 reached");
}
}
Я пытался следовать ответам на " Уведомлять, когда событие из другого класса инициируется ", но, похоже, это не сработало.