将Class中的事件处理程序添加到B类中调用的事件中

时间:2013-04-03 01:31:50

标签: c# .net c#-4.0

我真的很困惑如何在我的应用中使用事件。我有两个文件:

RTimer.cs
SettingsForm.cs

我在RTimer.cs设置了一个定时器,用于初始化定时器并设置间隔等。

我在SettingsForm.cs中有一个方法,每次计时器滴答时都需要做一些事情。此文件还有一个方法,可以通过SetTimer()

中的RTimer.cs方法设置计时器间隔

我不能让我的生活弄清楚如何让Tick事件从另一个类调用该方法,或者让其他类中的方法订阅Tick事件。

1 个答案:

答案 0 :(得分:2)

您可以这样实现:

class SettingsForm
{
    public void OnTimerEvent(object sender, EventArgs e)
    {
        throw new NotImplementedException();
    }
}

class RTimer
{
    Timer timer = new Timer();
    public void StartTimer(SettingsForm settingForm)
    {
        timer.Tick += settingForm.OnTimerEvent;
        timer.Interval = 5000;
        timer.Enabled = true;
    }
}