2012-02-04 33 views
0

使用WPF/PRISM我想通過ILoggerFacade將我的消息記錄到我的GUI(狀態欄和日誌記錄窗口)。問題是CreateLogger()函數在引導過程中很早就被調用,所以我無法解析IEventAggregatorPRISM記錄到GUI

什麼是正確的方式登錄到GUI與所有可用ILoggerFacade

感謝, 馬修

回答

0

外殼被創建在引導過程很晚了,所以甚至不會顯示在引導程序來初始日誌消息的窗口。

如果你想記錄以後任何信息的圖形用戶界面,你可以重寫方法做這樣的事情

protected override void ConfigureContainer() 
{ 
    base.ConfigureContainer(); 

    ((MyLoggerAdapter)this.Logger).EventAggregator = 
     Container.Resolve<IEventAggregator>(); 
} 

其中MyLoggerAdapter是你已經在你的CreateLogger覆蓋創建的記錄器的類型。 然後在您執行MyLoggerAdapter時,您可以有

public void Log(string message, Category category, Priority priority) 
{ 
    if (EventAggregator != null) 
    { 
     // Perform logging that requires EventAggregator. 
    } 
}