ImageProperties.SaveImagePropertiesAsync() 不保存更改
ImageProperties.SaveImagePropertiesAsync() doesn't save changes
我正在尝试将一些属性保存到 Windows 10 UWP 应用程序中的图像文件中,在移动设备上 phone。
var fileProperties = await file.Properties.GetImagePropertiesAsync();
fileProperties.Rating = 25;
fileProperties.Title = "Title";
fileProperties.DateTaken = DateTime.Now;
await file.Properties.SavePropertiesAsync();
由于某种原因,属性没有保存。
文件是这样预先创建的:
var file = await _sourceFolder.CreateFileAsync(pathToFile, CreationCollisionOption.ReplaceExisting);
await bitmap.SaveToStorageFile(file);
其中位图的类型为 WriteableBitmap。
图像已保存到文件,但属性没有。
有谁知道我做错了什么?没有例外,没有关于为什么不成功的消息。
这里的问题是 StorageFile.Properties.SavePropertiesAsync
,它获取 StorageItemContentProperties。并使用原始数据保存到文件中。
您应该可以使用 ImageProperties.SavePropertiesAsync
方法。它使用新的 ImageProperties 数据保存到文件。
例如:
var fileProperties = await file.Properties.GetImagePropertiesAsync();
fileProperties.Rating = 25;
fileProperties.Title = "title";
fileProperties.DateTaken = DateTime.Now;
await fileProperties.SavePropertiesAsync();
请注意,当评级设置为 0 时,不会保存其他值(如标题),也不会引发错误
我正在尝试将一些属性保存到 Windows 10 UWP 应用程序中的图像文件中,在移动设备上 phone。
var fileProperties = await file.Properties.GetImagePropertiesAsync();
fileProperties.Rating = 25;
fileProperties.Title = "Title";
fileProperties.DateTaken = DateTime.Now;
await file.Properties.SavePropertiesAsync();
由于某种原因,属性没有保存。
文件是这样预先创建的:
var file = await _sourceFolder.CreateFileAsync(pathToFile, CreationCollisionOption.ReplaceExisting);
await bitmap.SaveToStorageFile(file);
其中位图的类型为 WriteableBitmap。 图像已保存到文件,但属性没有。
有谁知道我做错了什么?没有例外,没有关于为什么不成功的消息。
这里的问题是 StorageFile.Properties.SavePropertiesAsync
,它获取 StorageItemContentProperties。并使用原始数据保存到文件中。
您应该可以使用 ImageProperties.SavePropertiesAsync
方法。它使用新的 ImageProperties 数据保存到文件。
例如:
var fileProperties = await file.Properties.GetImagePropertiesAsync();
fileProperties.Rating = 25;
fileProperties.Title = "title";
fileProperties.DateTaken = DateTime.Now;
await fileProperties.SavePropertiesAsync();
请注意,当评级设置为 0 时,不会保存其他值(如标题),也不会引发错误