我正在使用位置服務的應用程序。如果我正在調試,該應用程序工作正常。如果我在沒有調試的情況下啓動(在重建後),在第一次運行時它會在請求使用位置服務的授權時崩潰。會發生什麼情況是,如果讓它坐下來,並顯示消息框足夠長的時間(5-10秒),就會崩潰。如果我在沒有再次調試的情況下啓動它,它仍然可以正常工作(儘管它不會再顯示消息框,因爲不知何故,它會在該條件語句之後通過該行到達下一行,它將首先運行設置爲false(我假設,因爲它沒有「再顯示)。爲什麼MessageBox.Show會導致UnhandledException?
再次,如果我調試,沒有問題。如果我開始沒有調試,它死。這是建設無論是在調試或發佈模式時的情況。
如果我評論這塊代碼出來了,它的執行沒有問題,如果我點擊確定,它就快速執行,它執行時沒有問題。如果任何人都可以向我解釋爲什麼一個簡單的messagebox檢查ok會導致這樣的問題,我很感激。謝謝!
我相信它一定與後臺運行的代碼有關,但不確定它是否是setter(這是訪問setter的唯一代碼)。我確實通過將這段代碼移動到可以顯示自己位置的按鈕事件來解決這個問題。它最初是在InitializeComponent()後面運行的,所以UI還沒有被完全繪製,所以顯然這個過程的背景中的東西會干擾MessageBox。謝謝! – 2012-02-26 14:16:58