Достаточно часто разработчики мобильных приложений сталкиваются с проблемой сохранения данных. В Xamarin.Forms для этого предусмотрены различные варианты, которые зависят от типа выбранного хранилища. Существуют четыре основных вида сохранения данных, в этой статье мы подробнее рассмотрим коллекцию Properites в классе Application.
Свойство Properties
В подклассе Application имеется статический словарь Properties, который может использоваться для хранения данных, в частности, для использования в методах OnStart, OnSleep и OnResume. Доступ к нему можно получить из любой точки кода Xamarin.Forms с помощью Application.Current.Properties.
Словарь Properties использует строковый ключ и хранит значение объекта.
Например, вы можете установить постоянное свойство "id" в любом месте вашего кода (при выборе элемента, в методе OnDisappearing страницы или в методе OnSleep) как показано далее:
Application.Current.Properties ["id"] = someClass.ID;
В методах OnStart или OnResume вы можете использовать это значение для воссоздания пользовательского взаимодействия. В словаре Properties хранятся объекты, поэтому перед его использованием необходимо привести его значение.
if (Application.Current.Properties.ContainsKey("id")) { var id = Application.Current.Properties ["id"] as int; // do something with id }
Во избежание непредвиденных ошибок всегда проверяйте наличие ключа перед обращением к нему.