如何断开匿名事件?

时间:2010-09-20 22:47:24

标签: c# visual-studio-2008 events disconnect

  

可能重复:
  How do I Unregister 'anonymous' event handler

我有这样的代码:

        Binding bndTitle = this.DataBindings.Add("Text", obj, "Title");
        bndTitle.Format += (sender, e) =>
        {
            e.Value = "asdf" + e.Value;
        };

我现在如何断开Format事件?

1 个答案:

答案 0 :(得分:3)

不幸的是,你无法做到这一点。如果在同一范围内删除事件,则可以创建一个本地来保存lambda:

Binding bndTitle = this.DataBindings.Add("Text", obj, "Title");
EventHandler handler = (sender, e) =>
{
    e.Value = "asdf" + e.Value;
};

bndTitle.Format += handler;
// ...
bndTitle.Format -= handler;