我認爲這將是一個非常簡單的問題,但我無法解決它。在我的應用程序中,我想顯示當前時間取決於用戶的區域設置。如果我的手機通常顯示17:48,我希望我的應用以這種格式顯示。如果顯示5:48 pm,那麼同樣的規則應該適用於我的應用程序。然而,無論我做什麼,它只顯示am/pm版本。我正在使用該系統。 DateTime class。我看到一些解決方案,我可以這樣做(設定時間爲奧地利時間格式):根據Windows 10 UWP應用顯示目前時間
string time = DateTime.Now.ToString("t", de-AT);
它的工作原理! 但是,我不想手動設置它,而是根據用戶手機設置使用區域格式。 我試圖讓語言的國家名稱與CultureInfo.CurrentCulture這樣的:
string time = DateTime.Now.ToString("t", CultureInfo.CurrentCulture.Name);
不工作,因爲CultureInfo.CurrentCulture.Name始終顯示EN-US,即使我的手機設置爲奧地利地區。 當我使用GeographicRegion類和打印這樣的:
GeographicRegion userRegion = new GeographicRegion();
string region = userRegion.CodeTwoLetter;
我會得到一個字符串和「Österreich」(=奧地利)打印userRegion.NativeName時;
有什麼辦法可以完成這件事嗎?
CultureInfo.CurrentCulture應該包含手機用戶的區域設置,但由於某種原因,在UWP應用程序中,它被設置爲應用程序支持的(默認)語言。如果通過在package.appxmanifest中設置Resource Language =「de-AT」添加對de-AT的支持,並且用戶手機語言爲de-AT,則您將在CurrentCulture中獲得de-AT。但是,用戶的語言設置可能與用戶的區域設置有所不同,所以這沒有多大幫助。 –