gpt4 book ai didi

用于设置警报的 C# 简单事件处理程序

转载 作者:行者123 更新时间:2023-11-30 20:12:28 25 4
gpt4 key购买 nike

为什么下面一行“alarm.AlarmEvent += new AlarmEventHandler(alarm_Sound);”给我“非静态字段、方法或属性 'AlarmClock.Alarm.alarm_Sound(object, System.EventArgs)' 需要一个对象引用”

   public static void Main(string[] args)
{
Alarm alarm = new Alarm(new DateTime(2010, 4, 7, 23, 2, 0));
alarm.Set();
alarm.AlarmEvent += new AlarmEventHandler(alarm_Sound);
}

完整源代码在这里: Program.cs AlarmEventArgs

最佳答案

您的alarm_Sound 方法是一个实例方法,这意味着它只能在您的类的实例 上使用。
由于 Main 是一个 static 方法,它不与类的实例相关联,因此您不能在其中使用任何实例方法。

您需要通过将 static 关键字添加到其声明中,使您的 alarm_Sound 处理程序方法成为静态方法。

或者,您可以创建该类的一个实例,然后引用该实例的处理程序方法。

关于用于设置警报的 C# 简单事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2593988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com