2
我有一個應用程序,在任何過程中都有可能發生錯誤。在構造函數中導航
用戶必須經過幾個步驟,其中一個接一個接一個(表單的順序是嚴格固定的)。
我的問題是,當我在構造函數中看到發生了一些錯誤時,我想立即導航到一個特殊頁面,在那裏向用戶顯示所有錯誤消息。
示例:用戶單擊按鈕Next,應該將他帶到Page2
,但是在該構造函數Page2ViewModel
中,程序遇到了幾個錯誤。因此,我不想向用戶顯示Page2
(他根本無法使用該頁面),我想立即導航到構造函數中的特殊頁面。
這裏是我的構造看起來像:
public DetailPageViewModel(IDataRepository DataRepository,
IRegionManager regionManager,
IMainCompanyRepository companyRepository,
IBankTransactionsRepository bankTransactionsRepository,
IBankRepository bankRepository,
IRegionManager navigationService,
IErrorRepository errorRepository)
{
_DataRepository = DataRepository;
_regionManager = regionManager;
_companyRepository = companyRepository;
_bankTransactionsRepository = bankTransactionsRepository;
_bankRepository = bankRepository;
_navigationService = navigationService;
_errorRepository = errorRepository;
InitializeCommands();
//Here is where error can occur
InitializeValues();
if (errorRepository.ContainsErrorMessage())
_navigationService.RequestNavigate("ContentRegion", App.Experiences.ErrorPage.ToString());
}
當我切換在我的ErrorPageViewModel
我可以清楚地看到一個斷點,即構造函數初始化,但由於未知原因,(對我來說)它仍然顯示Page2
。
我錯過了什麼?
抱歉耽擱,我瞄準WPF來解決這個問題,但我已經設法解決問題。謝謝! –