2017-06-29 68 views
0

處理我的第一個Xamarin Forms應用程序。我把這個在我的應用程序的的OnStart()方法:使用應用程序屬性值填充輸入時遇到問題

Application.Current.Properties["Email"] = "[email protected]"; 

這應該儘快應用程序啓動的設定值,對不對? 然後我創建了一個帶有EmailAddress條目的登錄內容頁面。在頁面初始化中,我有這個:

if (Application.Current.Properties.ContainsKey("Email")) 
{ 
    EmailAddress.Text = Application.Current.Properties["Email"] as string; 
} 

當我運行該應用程序時,EmailAddress Entry元素未被填充。

我在做什麼錯?

回答

1

OnStart命令在App構造函數之後調用,您可能在App構造函數中創建登錄頁面並檢查登錄頁面構造函數,但OnStart尚未調用。在創建登錄/主頁之前設置它

Application.Current.Properties["Email"] = "[email protected]"; 
    var navPage = new MainPage(); 
+0

You da man,Yuri。那樣做了。謝謝。 –

1

它應該工作。

這裏是Documentation

你可以嘗試使用SavePropertiesAsync

的屬性字典自動保存到設備中。當應用程序從後臺返回或重新啓動後,添加到字典中的數據將可用。

Xamarin.Forms 1.4在Application類中引入了一個額外的方法--SavePropertiesAsync() - 可以調用它來主動保留屬性字典。這是爲了讓您在重要更新之後保存屬性,而不會冒着由於崩潰或被操作系統殺死而無法序列化的風險。

相關問題