有谁知道Set
在C#中是否有与Java 集合相当的好处?我知道你可以使用a Dictionary
或者HashTable
通过填充而忽略值来模仿一个集合,但这不是一个非常优雅的方式.
我需要能够在将对象添加到a时触发事件Queue<Delegate>
.
我创建了一个扩展的新类Queue
:
public delegate void ChangedEventHandler(object sender, EventArgs e);
public class QueueWithChange<Delegate> : Queue<Delegate>
{
public event ChangedEventHandler Changed;
protected virtual void OnChanged(EventArgs e) {
if (Changed != null)
{
Changed(this, e);
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后从另一个类附加事件,如:
QueueWithChange<TimerDelegate> eventQueue = new QueueWithChange<TimerDelegate>();
//
eventQueue.Changed += new ChangedEventHandler(delegate(object s, EventArgs ex) {
//This event is not being triggered, so this code is unreachable atm...and that is my problem
if (eventQueue.Count > 0)
{
eventQueue.Dequeue().Invoke(new DispatcherTimer() { Interval = …
Run Code Online (Sandbox Code Playgroud)