sách gpt4 ai đã đi

Thay thế sự kiện System.Timers.Timer.Elapsed khi kế thừa System.Timers.Timer

In lại 作者:太空宇宙 更新时间:2023-11-03 21:14:00 27 4
mua khóa gpt4 Nike

我正在创建一个新类,以便使 System.Timers.Timer 类更好地满足我的需要。我像这样创建我的新类......

using System.Timers;

class BtElapsedEventArgs : ElapsedEventArgs
{
//My extras
}

namespace MyGreatNewTimer
{
class BetterTimer : Timer
{

}
}

现在我只想替换在别处触发的 Elapsed 事件。

private void TestTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
//Timer has elapsed
}

我希望它产生以下...

private void TestTimer_Elapsed(object sender, BtElapsedEventArgs e)
{
//Timer has elapsed
}

我该怎么做呢?

1 Câu trả lời

如果我没看错你的问题,可以关注How to: Publish Events that Conform to .NET Framework Guidelines (C# Programming Guide)并创建您自己的 Elapsed 事件并隐藏原始的 Epalsed 事件:

namespace MyGreatNewTimer
{
class BtElapsedEventArgs : EventArgs
{
public DateTime SignalTime { get; set; }
//Some other properties
}
class BetterTimer : Timer
{

new public event EventHandler Elapsed;

public BetterTimer()
{
base.Elapsed += BetterTimer_Elapsed;
}

void BetterTimer_Elapsed(object sender, ElapsedEventArgs e)
{
var handler = this.Elapsed;
if(handler!=null)
{
var bte = new BtElapsedEventArgs() { SignalTime = e.SignalTime};
//Set other properties, then fire the event
handler(sender, bte);
}
}
}
}

关于c# - 继承System.Timers.Timer时替换System.Timers.Timer.Elapsed事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35685344/

27 4 0
Bài viết được đề xuất: python - 绘制节点有数据的图形
Bài viết được đề xuất: python - 带有 GoPiGo 的错误库 Raspbian
Bài viết được đề xuất: python - 如何构建包含cv模块的exe文件
Bài viết được đề xuất: c# - 在 c# web api 中序列化 xml 时删除命名空间内部节点
太空宇宙
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com