已经尝试解决这个很长一段时间了,但没有运气......我的想法是有不同的设置的配置,例如..控制如何处理异常。Func <EventHandler,从args获取属性值?
我的一些代码:)
public class ErrorEventArgs : EventArgs
{
public bool Handled { get; set; }
...
...
}
在我的主类的属性,如:
EventHandler<ErrorEventArgs> ErrorConfiguration {get; set;}
然后我有一个地方的OnError我需要知道所处理的值,
internal void OnError(ErrorEventArgs args)
{
Func<EventHandler<ErrorEventArgs>, bool> IsHandled;
IsHandled = ev => ??? // invoke ErrorConfiguration?
if (ErrorConfiguration != null && IsHandled(ErrorConfiguration))
error(this, args);
}
这怎么解决?
我可以这样做,如果它是没有Func的EventHandler,但我想封装布尔表达式。为什么不能我链中的拉姆达... :(
EventHandler<ErrorEventArgs> IsHandled;
IsHandled = (sender, e) => e.ErrorContext.Handled;
我不要收到你的意愿。你能提供一个更全球化的样本吗?你希望你的事件处理程序能够跳过已处理的事件吗? – Zebi 2011-03-19 13:21:52