0

我在設備上運行沒有任何堆棧跟蹤時在Windows Phone 8.1應用程序中遇到訪問衝突問題。我找到了一個答案,叫調度員瀏覽,但我不知道如何用mvvmcross做到這一點。請幫幫我。Windows Phone 8.1在導航到新視圖時訪問衝突

Access Violation cause and solution from codeproject

似乎一切都在我的代碼也許是造成內ShowViewModel方法好。請幫幫我。

Select click enter 14:24:56.2863139 
mvx:Diagnostic: 5.99 Showing ViewModel PlayMantraViewModel 
VM ctor enter 14:24:56.5572456 
VM ctor leave 14:24:56.5572456 
VM Init enter 14:24:56.5728871 
VM init leave 14:24:56.5885270 
appstate:Active 
Select click leave 14:24:56.6041698 
The program '[4028] Japam.WinPhone.exe' has exited with code 
-1073741819 (0xc0000005) 'Access violation'. 

我總共有3個視圖,導航到另一個視圖工作正常。

ShowViewModel<PlayMantraViewModel>(new { mid = m.MantraID }); 

這是我在我已經想通了視圖模型

+0

您是否可能有一些託管資源尚未在您正在導航的View/ViewModel中清除? – Cheesebaron

+0

@ Cheesebaron沒有,因爲它可以很好地導航到另一個視圖,一個視圖是錄製音頻,另一個是用後臺任務播放錄製的音頻。重新編碼視圖正常工作,但不能播放視圖。兩者都在模擬器中工作。 – Krishna

+0

僅僅因爲它在其他觀點之間很好地導航,並不神奇地意味着你不必在自己之後清理乾淨。這裏觸發我的是,您正在錄製音頻,您可能沒有正確清理它,並且在離開它時導致失敗。 – Cheesebaron

回答

0

打電話,我需要使用調度

this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal,() => { 
       ViewModel.MantraSelectedCommand.Execute(e.ClickedItem); 
      }); 

這行之有效。

相關問題