public async Task RoamFile(IBindableStorageFile file) { using (await f_lock.Acquire()) { if (!RoamedFiles.Contains(file)) { //Backing values string oldPath = GetParentFolder(file.BackingFile); string value = await _ivService.GetValue(oldPath, FileLocation.Local); await _ivService.Remove(oldPath, FileLocation.Local); await file.BackingFile.MoveAsync(_roamingFolder, file.BackingFile.Name, NameCollisionOption.GenerateUniqueName); await _ivService.Add(GetParentFolder(file.BackingFile), value, FileLocation.Roamed); LocalFiles.Remove(file); //UI file.IsRoamed = true; RoamedFiles.Add(file); } } }