如何发布匿名事件处理程序资源?

时间:2012-01-06 15:34:14

标签: c# c#-4.0

假设我有一个带有Event Loaded的ViewModel。我想在挂钩之后立即释放处理程序。这意味着只有一次连接。我想以下列方式使用匿名:

EventHandler handler = (s, e) =>
{
   //......             
   vm.Loaded -= handler;;
};

vm.Loaded += handler;

它不起作用。我不想单独使用命名处理程序。这种情况的解决方案是什么?

1 个答案:

答案 0 :(得分:1)

如果您首先声明EventHandler,它应该可以工作:

EventHandler handler = null;
handler = (s, e) => 
{    
    //......                 
    vm.Loaded -= handler;
};