已經嘗試解決這個很長一段時間了,但沒有運氣......我的想法是有不同的設置的配置,例如..控制如何處理異常。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