2017-06-02 49 views
1

我已經使用Orc.Wizard創建了包含4個頁面的嚮導。當我嘗試導航到第2頁時,WizardPageSelectionBehavior中的viewModelLocator無法解析與WizardPage關聯的ViewModel。Catel Orc.Wizard解決頁面

我已經叫我所有的嚮導的ViewModels的,嚮導頁和嚮導享有同樣的方式:

頁0使用以下類:

DatConfigWizardPageViewModel DatConfigWizardPageView DatConfigWizardPage

第1頁:

LoadOptionsWizardPageViewModel LoadOptionsWizardPageView LoadOptionsWizardPage

我有2個其他頁面,但它只是第2頁,它無法解析與嚮導頁面關聯的ViewModel。有沒有人對如何確定這種情況發生的原因以及如何解決它有什麼建議?

回答

0

您可以在應用程序啓動時啓用Catel調試日誌記錄:

LogManager.AddDebugLogListener();

然後你有非常詳細的信息爲什麼類型不能得到解決和/或構造。

有幾個可能的選項:

  1. 確保構造函數是公共的(將在調試日誌顯示來,如果不是這種情況)
  2. 確保在構造函數中注入的類型在註冊ServiceLocator(如果不是這種情況,將顯示在調試日誌中)
  3. 某處可能存在拼寫錯誤(套管),但我在這張票中仔細檢查了您的姓名,他們似乎是正確的。
+0

謝謝。我已將該調用添加到LogManager.AddDebugLogListener(); 但是,我只能從Orc.Wizard庫中的組件中獲取縮略記錄。這是一個看起來像什麼的鏡頭。 09:07:38:769 => [DEBUG] [Orc.Wizard.WizardBase] [8]添加頁面'DesktopTool.Wizards.Models.DatFileConfigWizardPage'以索引'0' 09:07:38:952 => [調試] [Orc.Wizard.WizardBase] [8]添加頁面'DesktopTool.Wizards.Models.OptsWizardPage'索引'1' –

+0

確保將「ignoreCatelLogging」設置爲* false * –

+1

是的,做到了。我已經解決了這個問題,但是我仍然不明白爲什麼(沒有通過catel代碼追蹤足夠的數據以找出它)。我剛剛創建了新類並將其命名爲 OptsWizardPage OptsWizardPageView OptsWizardPageViewModel 視圖模型現在可以正確解析。我會跟蹤舊名稱,但看着命名約定,我看不到任何明顯的原因,它不起作用。 順便說一句,Catel真的有一些不錯的功能。真的很好,總體而言。 –