2

我正在使用Visual Studio 2015開始我的第一個Xamarin Forms應用程序。默認模板提供了6個項目。 (Android,iOS,PCL,UWP,8.1,windows phone)。無法啓動Xamrin Forms中的UWP項目

所有項目都能正常工作,包括Android 8.1,Windows Phone Emulator。

但是當我嘗試部署UWP項目時,在它調用PCL內的MainPage的第一個語句處中斷(Exception)。這發生在本地計算機和模擬器中。 (調試模式,全部CPU)。

我已經將xamarin表單更新爲最新的穩定版本,更新了Visual Studio,但我無法解決問題。

例外:

「System.TypeLoadException」發生在 Xamarin.Forms.Platform.UAP.dll但在用戶代碼中沒有處理類型的異常

其他信息:找不到Windows運行時類型 'Windows.UI.ViewManagement.StatusBar'。

請幫助

回答

0

看起來像問題xamarin UWP概念,你更新Xamain.Forms? 轉到工具 - > NuGet包管理器 - >管理解決方案包 - > Microsoft.NETCore.Universal Windows平臺 - >更新最新版本。

後更新了所有,還是同樣的問題,請點擊以下一些圍繞 https://forums.xamarin.com/discussion/64731/how-to-solve-unknown-type-in-uwp-app-windows-ui-viewmanagement-statusbar

+0

是的,我已經更新,但它仍然無法正常工作。我會閱讀鏈接並試圖弄清楚。謝謝 –

4

Windows.UI.ViewManagement.StatusBar是一類只適用於Windows Mobile的擴展SDK,你必須引用此SDK它是供。

右鍵單擊在Solution Explorer中的UWP項目,選擇Add - >Reference,然後在通用的Windows選擇擴展和尋找Windows Mobile Extensions for the UWP。檢查與您的應用程序的目標Windows 10構建版本相匹配的版本。

您還需要使用IsTypePresent API,它將在運行時檢查當前設備上的類型是否可用。這一點很重要,因爲StatusBar不能在Windows 10比在手機上任何其他版本存在:

if(ApiInformation.IsTypePresent("Windows.UI.ViewManagement.StatusBar")) 
{ 
    //your code 
} 
+0

不幸的是,它並沒有爲我工作。 – Slade

+0

它對我都不起作用。 – Jose

0

如果這些工作都嘗試更新您的Windows SDK到最新版本。它爲我工作。我還添加了對Windows Mobile Extensions for the UWP的引用。

編輯:

我也已經嘗試,有時當你更新的Visual Studio再次失敗。我必須手動更改我的UWP項目中的SDK版本,進入屬性>應用程序>目標版本>選擇最新版本