private void OnSettingChanged(string propertyName, object value) { ApplicationData.Current.RoamingSettings.Values[propertyName] = value; instance.OnSettingsChanged(); instance.OnPropertyChanged(propertyName); }
private async void OnSettingChanged(string propertyName, object value) { if (propertyName == "MallKioskDemoCustomSettings") { // save to file as the content is too big to be saved as a string-like setting StorageFile file = await ApplicationData.Current.RoamingFolder.CreateFileAsync( "MallKioskDemoCustomSettings.xml", CreationCollisionOption.ReplaceExisting); using (Stream stream = await file.OpenStreamForWriteAsync()) { using (StreamWriter writer = new StreamWriter(stream)) { await writer.WriteAsync(value.ToString()); } } } else { ApplicationData.Current.RoamingSettings.Values[propertyName] = value; } instance.OnSettingsChanged(); instance.OnPropertyChanged(propertyName); }