下面以点击按钮为例。
XAML文件
<Button Content="保存" Click="Button_ClickAsync"/>
c#文件
private async void Button_ClickAsync(object sender, RoutedEventArgs e) {
var savePicker = new Windows.Storage.Pickers.FileSavePicker {
SuggestedStartLocation =
Windows.Storage.Pickers.PickerLocationId.DocumentsLibrary
};
// Dropdown of file types the user can save the file as
savePicker.FileTypeChoices.Add("可执行文件", new List<string>() {
".exe" });
// Default file name if the user does not type one in or select a file to replace
savePicker.SuggestedFileName = "AAAA";
StorageFile file = await savePicker.PickSaveFileAsync();
if (file != null) {
// Prevent updates to the remote version of the file until
// we finish making changes and call CompleteUpdatesAsync.
CachedFileManager.DeferUpdates(file);
// read asset file
var storagefile = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Assets/AAAA.exe"));
// copy to file
await storagefile.CopyAndReplaceAsync(file);
// Let Windows know that we're finished changing the file so
// the other app can update the remote version of the file.
// Completing updates may require Windows to ask for user input.
Windows.Storage.Provider.FileUpdateStatus status =
await CachedFileManager.CompleteUpdatesAsync(file);
if (status == Windows.Storage.Provider.FileUpdateStatus.Complete) {
await new MessageDialog(file.Name + " 已释放至 " + file.Path, "提示").ShowAsync();
} else {
await new MessageDialog(file.Name + " 释放至 " + file.Path + " 失败", "提示").ShowAsync();
}
}
}